diff --git a/aws/sdk/aws-models/dynamodb.json b/aws/sdk/aws-models/dynamodb.json index 464a6e071c3069526a8bca9d3b047d589c260819..7114bc3d72f16c42be3ae9b3961addd6cd144add 100644 --- a/aws/sdk/aws-models/dynamodb.json +++ b/aws/sdk/aws-models/dynamodb.json @@ -788,7 +788,7 @@ } ], "traits": { - "smithy.api#documentation": "

This operation allows you to perform batch reads or writes on data stored in DynamoDB,\n using PartiQL. Each read statement in a BatchExecuteStatement must specify\n an equality condition on all key attributes. This enforces that each SELECT\n statement in a batch returns at most a single item. For more information, see Running batch operations with PartiQL for DynamoDB\n .

\n \n

The entire batch must consist of either read statements or write statements, you\n cannot mix both in one batch.

\n
\n \n

A HTTP 200 response does not mean that all statements in the BatchExecuteStatement\n succeeded. Error details for individual statements can be found under the Error field of the BatchStatementResponse for each\n statement.

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

This operation allows you to perform batch reads or writes on data stored in DynamoDB,\n using PartiQL. Each read statement in a BatchExecuteStatement must specify\n an equality condition on all key attributes. This enforces that each SELECT\n statement in a batch returns at most a single item. For more information, see Running batch operations with PartiQL for DynamoDB .

\n \n

The entire batch must consist of either read statements or write statements, you\n cannot mix both in one batch.

\n
\n \n

A HTTP 200 response does not mean that all statements in the BatchExecuteStatement\n succeeded. Error details for individual statements can be found under the Error field of the BatchStatementResponse for each\n statement.

\n
" } }, "com.amazonaws.dynamodb#BatchExecuteStatementInput": { @@ -858,7 +858,7 @@ "aws.api#clientDiscoveredEndpoint": { "required": false }, - "smithy.api#documentation": "

The BatchGetItem operation returns the attributes of one or more items\n from one or more tables. You identify requested items by primary key.

\n

A single operation can retrieve up to 16 MB of data, which can contain as many as 100\n items. BatchGetItem returns a partial result if the response size limit is\n exceeded, the table's provisioned throughput is exceeded, more than 1MB per partition is\n requested, or an internal processing failure occurs. If a partial result is returned,\n the operation returns a value for UnprocessedKeys. You can use this value\n to retry the operation starting with the next item to get.

\n \n

If you request more than 100 items, BatchGetItem returns a\n ValidationException with the message \"Too many items requested for\n the BatchGetItem call.\"

\n
\n

For example, if you ask to retrieve 100 items, but each individual item is 300 KB in\n size, the system returns 52 items (so as not to exceed the 16 MB limit). It also returns\n an appropriate UnprocessedKeys value so you can get the next page of\n results. If desired, your application can include its own logic to assemble the pages of\n results into one dataset.

\n

If none of the items can be processed due to insufficient\n provisioned throughput on all of the tables in the request, then\n BatchGetItem returns a\n ProvisionedThroughputExceededException. If at least\n one of the items is successfully processed, then\n BatchGetItem completes successfully, while returning the keys of the\n unread items in UnprocessedKeys.

\n \n

If DynamoDB returns any unprocessed items, you should retry the batch operation on\n those items. However, we strongly recommend that you use an exponential\n backoff algorithm. If you retry the batch operation immediately, the\n underlying read or write requests can still fail due to throttling on the individual\n tables. If you delay the batch operation using exponential backoff, the individual\n requests in the batch are much more likely to succeed.

\n

For more information, see Batch Operations and Error Handling in the Amazon DynamoDB\n Developer Guide.

\n
\n

By default, BatchGetItem performs eventually consistent reads on every\n table in the request. If you want strongly consistent reads instead, you can set\n ConsistentRead to true for any or all tables.

\n

In order to minimize response latency, BatchGetItem may retrieve items in\n parallel.

\n

When designing your application, keep in mind that DynamoDB does not return items in\n any particular order. To help parse the response by item, include the primary key values\n for the items in your request in the ProjectionExpression parameter.

\n

If a requested item does not exist, it is not returned in the result. Requests for\n nonexistent items consume the minimum read capacity units according to the type of read.\n For more information, see Working with Tables in the Amazon DynamoDB Developer\n Guide.

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

The BatchGetItem operation returns the attributes of one or more items\n from one or more tables. You identify requested items by primary key.

\n

A single operation can retrieve up to 16 MB of data, which can contain as many as 100\n items. BatchGetItem returns a partial result if the response size limit is\n exceeded, the table's provisioned throughput is exceeded, more than 1MB per partition is\n requested, or an internal processing failure occurs. If a partial result is returned,\n the operation returns a value for UnprocessedKeys. You can use this value\n to retry the operation starting with the next item to get.

\n \n

If you request more than 100 items, BatchGetItem returns a\n ValidationException with the message \"Too many items requested for\n the BatchGetItem call.\"

\n
\n

For example, if you ask to retrieve 100 items, but each individual item is 300 KB in\n size, the system returns 52 items (so as not to exceed the 16 MB limit). It also returns\n an appropriate UnprocessedKeys value so you can get the next page of\n results. If desired, your application can include its own logic to assemble the pages of\n results into one dataset.

\n

If none of the items can be processed due to insufficient\n provisioned throughput on all of the tables in the request, then\n BatchGetItem returns a\n ProvisionedThroughputExceededException. If at least\n one of the items is successfully processed, then\n BatchGetItem completes successfully, while returning the keys of the\n unread items in UnprocessedKeys.

\n \n

If DynamoDB returns any unprocessed items, you should retry the batch operation on\n those items. However, we strongly recommend that you use an exponential\n backoff algorithm. If you retry the batch operation immediately, the\n underlying read or write requests can still fail due to throttling on the individual\n tables. If you delay the batch operation using exponential backoff, the individual\n requests in the batch are much more likely to succeed.

\n

For more information, see Batch Operations and Error Handling in the Amazon DynamoDB\n Developer Guide.

\n
\n

By default, BatchGetItem performs eventually consistent reads on every\n table in the request. If you want strongly consistent reads instead, you can set\n ConsistentRead to true for any or all tables.

\n

In order to minimize response latency, BatchGetItem may retrieve items in\n parallel.

\n

When designing your application, keep in mind that DynamoDB does not return items in\n any particular order. To help parse the response by item, include the primary key values\n for the items in your request in the ProjectionExpression parameter.

\n

If a requested item does not exist, it is not returned in the result. Requests for\n nonexistent items consume the minimum read capacity units according to the type of read.\n For more information, see Working with Tables in the Amazon DynamoDB Developer\n Guide.

\n \n

\n BatchGetItem will result in a ValidationException if the\n same key is specified multiple times.

\n
", "smithy.api#examples": [ { "title": "To retrieve multiple items from a table", @@ -918,7 +918,12 @@ } } } - ] + ], + "smithy.rules#operationContextParams": { + "ResourceArnList": { + "path": "keys(RequestItems)" + } + } } }, "com.amazonaws.dynamodb#BatchGetItemInput": { @@ -1237,7 +1242,12 @@ }, "output": {} } - ] + ], + "smithy.rules#operationContextParams": { + "ResourceArnList": { + "path": "keys(RequestItems)" + } + } } }, "com.amazonaws.dynamodb#BatchWriteItemInput": { @@ -1629,7 +1639,7 @@ } }, "traits": { - "smithy.api#documentation": "

A condition specified in the operation could not be evaluated.

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

A condition specified in the operation failed to be evaluated.

", "smithy.api#error": "client" } }, @@ -1909,7 +1919,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The name of the table. You can also provide the Amazon Resource Name (ARN) of the table in this\n parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "BackupName": { @@ -1971,7 +1984,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.

" + "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.

" } }, "WarmThroughput": { @@ -2024,7 +2037,10 @@ "target": "com.amazonaws.dynamodb#TableName", "traits": { "smithy.api#documentation": "

The global table name.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "ReplicationGroup": { @@ -2156,7 +2172,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The name of the table to create. You can also provide the Amazon Resource Name (ARN) of the table in\n this parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "KeySchema": { @@ -2169,19 +2188,19 @@ "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": { "target": "com.amazonaws.dynamodb#BillingMode", "traits": { - "smithy.api#documentation": "

Controls how you are charged for read and write throughput and how you manage\n capacity. This setting can be changed later.

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

Controls how you are charged for read and write throughput and how you manage\n capacity. This setting can be changed later.

\n " } }, "ProvisionedThroughput": { @@ -2223,7 +2242,7 @@ "WarmThroughput": { "target": "com.amazonaws.dynamodb#WarmThroughput", "traits": { - "smithy.api#documentation": "

Represents the warm throughput (in read units per second and write units per second) for creating a table.

" + "smithy.api#documentation": "

Represents the warm throughput (in read units per second and write units per second)\n for creating a table.

" } }, "ResourcePolicy": { @@ -2399,7 +2418,10 @@ "target": "com.amazonaws.dynamodb#BackupArn", "traits": { "smithy.api#documentation": "

The ARN associated with the backup.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } } }, @@ -2510,7 +2532,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The name of the table from which to delete the item. You can also provide the\n Amazon Resource Name (ARN) of the table in this parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "Key": { @@ -2691,7 +2716,10 @@ "target": "com.amazonaws.dynamodb#ResourceArnString", "traits": { "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the DynamoDB resource from which the policy will be\n removed. The resources you can specify include tables and streams. If you remove the\n policy of a table, it will also remove the permissions for the table's indexes defined\n in that policy document. This is because index permissions are defined in the table's\n policy.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "ExpectedRevisionId": { @@ -2780,7 +2808,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The name of the table to delete. You can also provide the Amazon Resource Name (ARN) of the table in\n this parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } } }, @@ -2840,7 +2871,10 @@ "target": "com.amazonaws.dynamodb#BackupArn", "traits": { "smithy.api#documentation": "

The Amazon Resource Name (ARN) associated with the backup.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } } }, @@ -2885,7 +2919,7 @@ "aws.api#clientDiscoveredEndpoint": { "required": false }, - "smithy.api#documentation": "

Checks the status of continuous backups and point in time recovery on the specified\n table. Continuous backups are ENABLED on all tables at table creation. If\n point in time recovery is enabled, PointInTimeRecoveryStatus will be set to\n ENABLED.

\n

After 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 recovery period to any value between 1 and 35 days.

\n

You can call DescribeContinuousBackups at a maximum rate of 10 times per\n second.

" + "smithy.api#documentation": "

Checks the status of continuous backups and point in time recovery on the specified\n table. Continuous backups are ENABLED on all tables at table creation. If\n point in time recovery is enabled, PointInTimeRecoveryStatus will be set to\n ENABLED.

\n

After 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 recovery period to any value between 1 and 35 days.

\n

You can call DescribeContinuousBackups at a maximum rate of 10 times per\n second.

" } }, "com.amazonaws.dynamodb#DescribeContinuousBackupsInput": { @@ -2895,7 +2929,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

Name of the table for which the customer wants to check the continuous backups and\n point in time recovery settings.

\n

You can also provide the Amazon Resource Name (ARN) of the table in this parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } } }, @@ -2944,7 +2981,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The name of the table to describe. You can also provide the Amazon Resource Name (ARN) of the table in\n this parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "IndexName": { @@ -3066,7 +3106,10 @@ "target": "com.amazonaws.dynamodb#ExportArn", "traits": { "smithy.api#documentation": "

The Amazon Resource Name (ARN) associated with the export.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } } }, @@ -3121,7 +3164,10 @@ "target": "com.amazonaws.dynamodb#TableName", "traits": { "smithy.api#documentation": "

The name of the global table.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } } }, @@ -3176,7 +3222,10 @@ "target": "com.amazonaws.dynamodb#TableName", "traits": { "smithy.api#documentation": "

The name of the global table to describe.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } } }, @@ -3228,7 +3277,10 @@ "target": "com.amazonaws.dynamodb#ImportArn", "traits": { "smithy.api#documentation": "

The Amazon Resource Name (ARN) associated with the table you're importing to.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } } }, @@ -3284,7 +3336,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The name of the table being described. You can also provide the Amazon Resource Name (ARN) of the table\n in this parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } } }, @@ -3455,7 +3510,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The name of the table to describe. You can also provide the Amazon Resource Name (ARN) of the table in\n this parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } } }, @@ -3506,7 +3564,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The name of the table. You can also provide the Amazon Resource Name (ARN) of the table in this\n parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } } }, @@ -3561,7 +3622,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The name of the table to be described. You can also provide the Amazon Resource Name (ARN) of the table\n in this parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } } }, @@ -3911,6 +3975,16 @@ "required": false, "documentation": "The AccountId Endpoint Mode.", "type": "String" + }, + "ResourceArn": { + "required": false, + "documentation": "ResourceArn containing arn of resource", + "type": "String" + }, + "ResourceArnList": { + "required": false, + "documentation": "ResourceArnList containing list of resource arns", + "type": "stringArray" } }, "rules": [ @@ -4056,113 +4130,6 @@ ], "type": "tree" }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "AccountIdEndpointMode" - } - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "AccountIdEndpointMode" - }, - "required" - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "AccountId" - } - ] - } - ] - } - ], - "error": "AccountIdEndpointMode is required but no AccountID was provided or able to be loaded.", - "type": "error" - }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "AccountId" - } - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - }, - "aws" - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "ref": "AccountId" - }, - false - ] - } - ] - } - ], - "error": "Credentials-sourced account ID parameter is invalid", - "type": "error" - }, { "conditions": [ { @@ -4235,16 +4202,18 @@ { "ref": "AccountIdEndpointMode" }, - "disabled" + "required" ] } ], - "endpoint": { - "url": "https://dynamodb-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "rules": [ + { + "conditions": [], + "error": "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported", + "type": "error" + } + ], + "type": "tree" }, { "conditions": [], @@ -4333,16 +4302,18 @@ { "ref": "AccountIdEndpointMode" }, - "disabled" + "required" ] } ], - "endpoint": { - "url": "https://dynamodb.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "rules": [ + { + "conditions": [], + "error": "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported", + "type": "error" + } + ], + "type": "tree" }, { "conditions": [], @@ -4372,16 +4343,18 @@ { "ref": "AccountIdEndpointMode" }, - "disabled" + "required" ] } ], - "endpoint": { - "url": "https://dynamodb-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "rules": [ + { + "conditions": [], + "error": "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported", + "type": "error" + } + ], + "type": "tree" }, { "conditions": [], @@ -4451,16 +4424,44 @@ { "ref": "AccountIdEndpointMode" }, - "disabled" + "required" ] } ], - "endpoint": { - "url": "https://dynamodb.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "rules": [ + { + "conditions": [ + { + "fn": "not", + "argv": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "error": "Invalid Configuration: AccountIdEndpointMode is required and DualStack is enabled, but DualStack account endpoints are not supported", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported", + "type": "error" + } + ], + "type": "tree" }, { "conditions": [], @@ -4493,29 +4494,16 @@ ] }, { - "fn": "stringEquals", - "argv": [ - { - "ref": "AccountIdEndpointMode" - }, - "disabled" - ] - } - ], - "endpoint": { - "url": "https://dynamodb.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "isSet", + "fn": "not", "argv": [ { - "ref": "AccountId" + "fn": "stringEquals", + "argv": [ + { + "ref": "AccountIdEndpointMode" + }, + "disabled" + ] } ] }, @@ -4561,1540 +4549,8964 @@ ] } ] - } - ], - "endpoint": { - "url": "https://{AccountId}.ddb.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://dynamodb.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - } - ], - "type": "tree" + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "ResourceArn" + } + ] + }, + { + "fn": "aws.parseArn", + "argv": [ + { + "ref": "ResourceArn" + } + ], + "assign": "ParsedArn" + }, + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "ParsedArn" + }, + "service" + ] + }, + "dynamodb" + ] + }, + { + "fn": "isValidHostLabel", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "ParsedArn" + }, + "region" + ] + }, + false + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "ParsedArn" + }, + "region" + ] + }, + "{Region}" + ] + }, + { + "fn": "isValidHostLabel", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "ParsedArn" + }, + "accountId" + ] + }, + false + ] + } + ], + "endpoint": { + "url": "https://{ParsedArn#accountId}.ddb.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "AccountIdEndpointMode" + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "AccountIdEndpointMode" + }, + "disabled" + ] + } + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws" + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "ResourceArnList" + } + ] + }, + { + "fn": "getAttr", + "argv": [ + { + "ref": "ResourceArnList" + }, + "[0]" + ], + "assign": "FirstArn" + }, + { + "fn": "aws.parseArn", + "argv": [ + { + "ref": "FirstArn" + } + ], + "assign": "ParsedArn" + }, + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "ParsedArn" + }, + "service" + ] + }, + "dynamodb" + ] + }, + { + "fn": "isValidHostLabel", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "ParsedArn" + }, + "region" + ] + }, + false + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "ParsedArn" + }, + "region" + ] + }, + "{Region}" + ] + }, + { + "fn": "isValidHostLabel", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "ParsedArn" + }, + "accountId" + ] + }, + false + ] + } + ], + "endpoint": { + "url": "https://{ParsedArn#accountId}.ddb.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "AccountIdEndpointMode" + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "AccountIdEndpointMode" + }, + "disabled" + ] + } + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws" + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "AccountId" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "ref": "AccountId" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{AccountId}.ddb.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Credentials-sourced account ID parameter is invalid", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "AccountIdEndpointMode" + } + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "AccountIdEndpointMode" + }, + "required" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "not", + "argv": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "not", + "argv": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws" + ] + } + ], + "rules": [ + { + "conditions": [], + "error": "AccountIdEndpointMode is required but no AccountID was provided or able to be loaded", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: AccountIdEndpointMode is required but account endpoints are not supported in this partition", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: AccountIdEndpointMode is required and DualStack is enabled, but DualStack account endpoints are not supported", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://dynamodb.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] + }, + "smithy.rules#endpointTests": { + "testCases": [ + { + "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.af-south-1.amazonaws.com" + } + }, + "params": { + "Region": "af-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.ap-east-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.ap-northeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.ap-northeast-3.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.ap-south-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.ap-southeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.ap-southeast-3.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.ca-central-1.amazonaws.com" + } + }, + "params": { + "Region": "ca-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ca-central-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb-fips.ca-central-1.amazonaws.com" + } + }, + "params": { + "Region": "ca-central-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.eu-central-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.eu-north-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.eu-south-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.eu-west-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.eu-west-2.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.eu-west-3.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region local with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "dynamodb", + "signingRegion": "us-east-1" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "Region": "local", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region me-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.me-south-1.amazonaws.com" + } + }, + "params": { + "Region": "me-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.sa-east-1.amazonaws.com" + } + }, + "params": { + "Region": "sa-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-east-2.amazonaws.com" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb-fips.us-east-2.amazonaws.com" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb-fips.us-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb-fips.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://dynamodb-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.cn-northwest-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://dynamodb-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "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://dynamodb-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 disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-iso-west-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-west-1", + "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://dynamodb-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "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": { + "endpoint": { + "url": "https://dynamodb.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "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://dynamodb-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "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": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": true, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-west-2:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-west-2:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:s3:us-east-1:333333333333:stream/testStream], AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:s3:us-east-1:333333333333:stream/testStream" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=, AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "", + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:s3:us-west-2:222222222222:stream/testStream" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=, AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountIdEndpointMode=preferred, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": true, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-west-2:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-west-2:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:s3:us-east-1:333333333333:stream/testStream], AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:s3:us-east-1:333333333333:stream/testStream" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=, AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "", + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:s3:us-west-2:222222222222:stream/testStream" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=, AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountIdEndpointMode=disabled, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": true, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-west-2:333333333333:table/table_name], AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-west-2:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:s3:us-east-1:333333333333:stream/testStream], AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:s3:us-east-1:333333333333:stream/testStream" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=, AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "", + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "", + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:s3:us-west-2:222222222222:stream/testStream" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=, AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "", + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "SDK::Endpoint": "https://example.com", + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountIdEndpointMode=required, Region=us-east-1, Endpoint=https://example.com}", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountIdEndpointMode": "required", + "Region": "us-east-1", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "error": "Invalid Configuration: FIPS and local endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "error": "Invalid Configuration: FIPS and local endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "error": "Invalid Configuration: Dualstack and local endpoint are not supported" + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "local", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "local", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-west-2:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-west-2:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:s3:us-east-1:333333333333:stream/testStream], AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:s3:us-east-1:333333333333:stream/testStream" + ], + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=, AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "local", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "", + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "", + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "error": "Invalid Configuration: FIPS and local endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "error": "Invalid Configuration: FIPS and local endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "error": "Invalid Configuration: Dualstack and local endpoint are not supported" + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "local", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "local", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "local", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:s3:us-west-2:222222222222:stream/testStream" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=, AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "", + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "error": "Invalid Configuration: FIPS and local endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "error": "Invalid Configuration: FIPS and local endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "error": "Invalid Configuration: Dualstack and local endpoint are not supported" + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "local", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountIdEndpointMode=preferred, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountIdEndpointMode": "preferred", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "error": "Invalid Configuration: FIPS and local endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "error": "Invalid Configuration: FIPS and local endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "error": "Invalid Configuration: Dualstack and local endpoint are not supported" + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "local", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "local", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-west-2:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-west-2:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:s3:us-east-1:333333333333:stream/testStream], AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:s3:us-east-1:333333333333:stream/testStream" + ], + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=, AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "local", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "", + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "", + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "error": "Invalid Configuration: FIPS and local endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "error": "Invalid Configuration: FIPS and local endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "error": "Invalid Configuration: Dualstack and local endpoint are not supported" + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "local", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "local", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "local", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:s3:us-west-2:222222222222:stream/testStream" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=, AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "", + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "error": "Invalid Configuration: FIPS and local endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "error": "Invalid Configuration: FIPS and local endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "error": "Invalid Configuration: Dualstack and local endpoint are not supported" + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "local", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountIdEndpointMode=disabled, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountIdEndpointMode": "disabled", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=required, Region=local}", + "expect": { + "error": "Invalid Configuration: FIPS and local endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=required, Region=local}", + "expect": { + "error": "Invalid Configuration: FIPS and local endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=required, Region=local}", + "expect": { + "error": "Invalid Configuration: Dualstack and local endpoint are not supported" + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=required, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "local", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "local", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-west-2:333333333333:table/table_name], AccountIdEndpointMode=required, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-west-2:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:s3:us-east-1:333333333333:stream/testStream], AccountIdEndpointMode=required, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:s3:us-east-1:333333333333:stream/testStream" + ], + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=, AccountIdEndpointMode=required, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "local", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "", + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "", + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=required, Region=local}", + "expect": { + "error": "Invalid Configuration: FIPS and local endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=required, Region=local}", + "expect": { + "error": "Invalid Configuration: FIPS and local endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=required, Region=local}", + "expect": { + "error": "Invalid Configuration: Dualstack and local endpoint are not supported" + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=required, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "local", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, AccountIdEndpointMode=required, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "local", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, AccountIdEndpointMode=required, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "local", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:s3:us-west-2:222222222222:stream/testStream" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=, AccountIdEndpointMode=required, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "", + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=local}", + "expect": { + "error": "Invalid Configuration: FIPS and local endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=local}", + "expect": { + "error": "Invalid Configuration: FIPS and local endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=local}", + "expect": { + "error": "Invalid Configuration: Dualstack and local endpoint are not supported" + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "local", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountIdEndpointMode=required, Region=local}", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "signingName": "dynamodb", + "name": "sigv4" + } + ] + }, + "url": "http://localhost:8000" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountIdEndpointMode": "required", + "Region": "local" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://dynamodb-fips.us-east-1.api.aws" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://dynamodb-fips.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-east-1.api.aws" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": true, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://111111111111.ddb.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://333333333333.ddb.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://222222222222.ddb.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://333333333333.ddb.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://333333333333.ddb.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-west-2:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://111111111111.ddb.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-west-2:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:s3:us-east-1:333333333333:stream/testStream], AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://111111111111.ddb.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:s3:us-east-1:333333333333:stream/testStream" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=, AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "error": "Credentials-sourced account ID parameter is invalid" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "", + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://dynamodb-fips.us-east-1.api.aws" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://dynamodb-fips.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-east-1.api.aws" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://222222222222.ddb.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:s3:us-west-2:222222222222:stream/testStream" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=, AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "", + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://dynamodb-fips.us-east-1.api.aws" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://dynamodb-fips.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-east-1.api.aws" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://333333333333.ddb.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://222222222222.ddb.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountIdEndpointMode=preferred, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountIdEndpointMode": "preferred", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required and DualStack is enabled, but DualStack account endpoints are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": true, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://111111111111.ddb.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://333333333333.ddb.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://222222222222.ddb.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://333333333333.ddb.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://333333333333.ddb.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-west-2:333333333333:table/table_name], AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://111111111111.ddb.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-west-2:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:s3:us-east-1:333333333333:stream/testStream], AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://111111111111.ddb.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:s3:us-east-1:333333333333:stream/testStream" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=, AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "error": "Credentials-sourced account ID parameter is invalid" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "", + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "", + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required and DualStack is enabled, but DualStack account endpoints are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://222222222222.ddb.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "error": "AccountIdEndpointMode is required but no AccountID was provided or able to be loaded" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "error": "AccountIdEndpointMode is required but no AccountID was provided or able to be loaded" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:s3:us-west-2:222222222222:stream/testStream" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=, AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "error": "AccountIdEndpointMode is required but no AccountID was provided or able to be loaded" + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "", + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required and DualStack is enabled, but DualStack account endpoints are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://333333333333.ddb.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://222222222222.ddb.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountIdEndpointMode=required, Region=us-east-1}", + "expect": { + "error": "AccountIdEndpointMode is required but no AccountID was provided or able to be loaded" + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountIdEndpointMode": "required", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required and DualStack is enabled, but DualStack account endpoints are not supported" + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required but account endpoints are not supported in this partition" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required but account endpoints are not supported in this partition" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required but account endpoints are not supported in this partition" + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required but account endpoints are not supported in this partition" + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required but account endpoints are not supported in this partition" + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-west-2:333333333333:table/table_name], AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required but account endpoints are not supported in this partition" + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-west-2:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:s3:us-east-1:333333333333:stream/testStream], AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required but account endpoints are not supported in this partition" + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:s3:us-east-1:333333333333:stream/testStream" + ], + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=, AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required but account endpoints are not supported in this partition" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "", + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "", + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required and DualStack is enabled, but DualStack account endpoints are not supported" + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required but account endpoints are not supported in this partition" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required but account endpoints are not supported in this partition" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required but account endpoints are not supported in this partition" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:s3:us-west-2:222222222222:stream/testStream" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=, AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required but account endpoints are not supported in this partition" + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "", + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported" + }, + "params": { + "UseFIPS": true, + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required and DualStack is enabled, but DualStack account endpoints are not supported" + }, + "params": { + "UseFIPS": false, + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required but account endpoints are not supported in this partition" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "required" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } }, { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" - } - ] - }, - "smithy.rules#endpointTests": { - "testCases": [ + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required but account endpoints are not supported in this partition" + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, { - "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountIdEndpointMode=required, Region=cn-north-1}", + "expect": { + "error": "Invalid Configuration: AccountIdEndpointMode is required but account endpoints are not supported in this partition" + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "AccountIdEndpointMode": "required", + "Region": "cn-north-1" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=disabled, Region=us-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.af-south-1.amazonaws.com" + "url": "https://dynamodb-fips.us-east-1.api.aws" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "ListTables" + } + ], "params": { - "Region": "af-south-1", - "UseFIPS": false, - "UseDualStack": false + "UseFIPS": true, + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" } }, { - "documentation": "For region ap-east-1 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=true, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=disabled, Region=us-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.ap-east-1.amazonaws.com" + "url": "https://dynamodb-fips.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "ListTables" + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=disabled, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-east-1.api.aws" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": true, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "ListTables" + } + ], "params": { - "Region": "ap-east-1", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" } }, { - "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=disabled, Region=us-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.ap-northeast-1.amazonaws.com" + "url": "https://dynamodb.us-east-1.amazonaws.com" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "ListTables" + } + ], "params": { - "Region": "ap-northeast-1", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" } }, { - "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=us-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.ap-northeast-2.amazonaws.com" + "url": "https://dynamodb.us-east-1.amazonaws.com" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], "params": { - "Region": "ap-northeast-2", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" } }, { - "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=us-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.ap-northeast-3.amazonaws.com" + "url": "https://dynamodb.us-east-1.amazonaws.com" } }, "params": { - "Region": "ap-northeast-3", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" } }, { - "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=us-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.ap-south-1.amazonaws.com" + "url": "https://dynamodb.us-east-1.amazonaws.com" } }, "params": { - "Region": "ap-south-1", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" } }, { - "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=us-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.ap-southeast-1.amazonaws.com" + "url": "https://dynamodb.us-east-1.amazonaws.com" } }, "params": { - "Region": "ap-southeast-1", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" } }, { - "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-west-2:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=us-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.ap-southeast-2.amazonaws.com" + "url": "https://dynamodb.us-east-1.amazonaws.com" } }, "params": { - "Region": "ap-southeast-2", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-west-2:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" } }, { - "documentation": "For region ap-southeast-3 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:s3:us-east-1:333333333333:stream/testStream], AccountIdEndpointMode=disabled, Region=us-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.ap-southeast-3.amazonaws.com" + "url": "https://dynamodb.us-east-1.amazonaws.com" } }, "params": { - "Region": "ap-southeast-3", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:s3:us-east-1:333333333333:stream/testStream" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" } }, { - "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=, AccountIdEndpointMode=disabled, Region=us-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.ca-central-1.amazonaws.com" + "url": "https://dynamodb.us-east-1.amazonaws.com" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "", + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "ListTables" + } + ], "params": { - "Region": "ca-central-1", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "AccountId": "", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" } }, { - "documentation": "For region ca-central-1 with FIPS enabled and DualStack disabled", + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=disabled, Region=us-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb-fips.ca-central-1.amazonaws.com" + "url": "https://dynamodb-fips.us-east-1.api.aws" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": true, + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=disabled, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://dynamodb-fips.us-east-1.amazonaws.com" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], "params": { - "Region": "ca-central-1", "UseFIPS": true, - "UseDualStack": false + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" } }, { - "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=disabled, Region=us-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.eu-central-1.amazonaws.com" + "url": "https://dynamodb.us-east-1.api.aws" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], + "params": { + "UseFIPS": false, + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=disabled, Region=us-east-1}", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-east-1.amazonaws.com" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], "params": { - "Region": "eu-central-1", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" } }, { - "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, AccountIdEndpointMode=disabled, Region=us-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.eu-north-1.amazonaws.com" + "url": "https://dynamodb.us-east-1.amazonaws.com" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name" + } + } + ], "params": { - "Region": "eu-north-1", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" } }, { - "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, AccountIdEndpointMode=disabled, Region=us-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.eu-south-1.amazonaws.com" + "url": "https://dynamodb.us-east-1.amazonaws.com" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:s3:us-west-2:222222222222:stream/testStream" + } + } + ], "params": { - "Region": "eu-south-1", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" } }, { - "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=, AccountIdEndpointMode=disabled, Region=us-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.eu-west-1.amazonaws.com" + "url": "https://dynamodb.us-east-1.amazonaws.com" } }, "params": { - "Region": "eu-west-1", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "ResourceArn": "", + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" } }, { - "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=us-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.eu-west-2.amazonaws.com" + "url": "https://dynamodb-fips.us-east-1.api.aws" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], "params": { - "Region": "eu-west-2", - "UseFIPS": false, - "UseDualStack": false + "UseFIPS": true, + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" } }, { - "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=us-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.eu-west-3.amazonaws.com" + "url": "https://dynamodb-fips.us-east-1.amazonaws.com" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], "params": { - "Region": "eu-west-3", - "UseFIPS": false, - "UseDualStack": false + "UseFIPS": true, + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" } }, { - "documentation": "For region local with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=us-east-1}", "expect": { "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "dynamodb", - "signingRegion": "us-east-1" - } - ] - }, - "url": "http://localhost:8000" + "url": "https://dynamodb.us-east-1.api.aws" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": true, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], "params": { - "Region": "local", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" } }, { - "documentation": "For region me-south-1 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=us-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.me-south-1.amazonaws.com" + "url": "https://dynamodb.us-east-1.amazonaws.com" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "disabled" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], "params": { - "Region": "me-south-1", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" } }, { - "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=disabled, Region=us-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.sa-east-1.amazonaws.com" + "url": "https://dynamodb.us-east-1.amazonaws.com" } }, "params": { - "Region": "sa-east-1", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountIdEndpointMode=disabled, Region=us-east-1}", "expect": { "endpoint": { "url": "https://dynamodb.us-east-1.amazonaws.com" } }, "params": { - "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "AccountIdEndpointMode": "disabled", + "Region": "us-east-1" } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "{UseFIPS=true, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { - "url": "https://dynamodb-fips.us-east-1.amazonaws.com" + "url": "https://dynamodb-fips.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { - "Region": "us-east-1", "UseFIPS": true, - "UseDualStack": false + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=true, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { - "url": "https://dynamodb.us-east-2.amazonaws.com" + "url": "https://dynamodb-fips.cn-north-1.amazonaws.com.cn" } }, "params": { - "Region": "us-east-2", - "UseFIPS": false, - "UseDualStack": false + "UseFIPS": true, + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region us-east-2 with FIPS enabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { - "url": "https://dynamodb-fips.us-east-2.amazonaws.com" + "url": "https://dynamodb.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { - "Region": "us-east-2", - "UseFIPS": true, - "UseDualStack": false + "UseFIPS": false, + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { - "url": "https://dynamodb.us-west-1.amazonaws.com" + "url": "https://dynamodb.cn-north-1.amazonaws.com.cn" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "ListTables" + } + ], "params": { - "Region": "us-west-1", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region us-west-1 with FIPS enabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { - "url": "https://dynamodb-fips.us-west-1.amazonaws.com" + "url": "https://dynamodb.cn-north-1.amazonaws.com.cn" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], "params": { - "Region": "us-west-1", - "UseFIPS": true, - "UseDualStack": false + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { - "url": "https://dynamodb.us-west-2.amazonaws.com" + "url": "https://dynamodb.cn-north-1.amazonaws.com.cn" } }, "params": { - "Region": "us-west-2", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { - "url": "https://dynamodb-fips.us-west-2.amazonaws.com" + "url": "https://dynamodb.cn-north-1.amazonaws.com.cn" } }, "params": { - "Region": "us-west-2", - "UseFIPS": true, - "UseDualStack": false + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { - "url": "https://dynamodb-fips.us-east-1.api.aws" + "url": "https://dynamodb.cn-north-1.amazonaws.com.cn" } }, "params": { - "Region": "us-east-1", - "UseFIPS": true, - "UseDualStack": true + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-west-2:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { - "url": "https://dynamodb.us-east-1.api.aws" + "url": "https://dynamodb.cn-north-1.amazonaws.com.cn" } }, "params": { - "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": true + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-west-2:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:s3:us-east-1:333333333333:stream/testStream], AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { "url": "https://dynamodb.cn-north-1.amazonaws.com.cn" } }, "params": { - "Region": "cn-north-1", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:s3:us-east-1:333333333333:stream/testStream" + ], + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=, AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { - "url": "https://dynamodb.cn-northwest-1.amazonaws.com.cn" + "url": "https://dynamodb.cn-north-1.amazonaws.com.cn" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "", + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "ListTables" + } + ], "params": { - "Region": "cn-northwest-1", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "AccountId": "", + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { "url": "https://dynamodb-fips.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { - "Region": "cn-north-1", "UseFIPS": true, - "UseDualStack": true + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { "url": "https://dynamodb-fips.cn-north-1.amazonaws.com.cn" } }, "params": { - "Region": "cn-north-1", "UseFIPS": true, - "UseDualStack": false + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { "url": "https://dynamodb.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { - "Region": "cn-north-1", "UseFIPS": false, - "UseDualStack": true + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { - "url": "https://dynamodb.us-gov-east-1.amazonaws.com" + "url": "https://dynamodb.cn-north-1.amazonaws.com.cn" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } + } + ], "params": { - "Region": "us-gov-east-1", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { - "url": "https://dynamodb.us-gov-east-1.amazonaws.com" + "url": "https://dynamodb.cn-north-1.amazonaws.com.cn" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name" + } + } + ], "params": { - "Region": "us-gov-east-1", - "UseFIPS": true, - "UseDualStack": false + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { - "url": "https://dynamodb.us-gov-west-1.amazonaws.com" + "url": "https://dynamodb.cn-north-1.amazonaws.com.cn" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:s3:us-west-2:222222222222:stream/testStream" + } + } + ], "params": { - "Region": "us-gov-west-1", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=, AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { - "url": "https://dynamodb.us-gov-west-1.amazonaws.com" + "url": "https://dynamodb.cn-north-1.amazonaws.com.cn" } }, "params": { - "Region": "us-gov-west-1", - "UseFIPS": true, - "UseDualStack": false + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "", + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { - "url": "https://dynamodb-fips.us-gov-east-1.api.aws" + "url": "https://dynamodb-fips.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { - "Region": "us-gov-east-1", "UseFIPS": true, - "UseDualStack": true + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { - "url": "https://dynamodb.us-gov-east-1.api.aws" + "url": "https://dynamodb-fips.cn-north-1.amazonaws.com.cn" } }, "params": { - "Region": "us-gov-east-1", - "UseFIPS": false, - "UseDualStack": true + "UseFIPS": true, + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { - "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov" + "url": "https://dynamodb.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { - "Region": "us-iso-east-1", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region us-iso-west-1 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { - "url": "https://dynamodb.us-iso-west-1.c2s.ic.gov" + "url": "https://dynamodb.cn-north-1.amazonaws.com.cn" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], "params": { - "Region": "us-iso-west-1", "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 + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { - "url": "https://dynamodb-fips.us-iso-east-1.c2s.ic.gov" + "url": "https://dynamodb.cn-north-1.amazonaws.com.cn" } }, "params": { - "Region": "us-iso-east-1", - "UseFIPS": true, - "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 + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountIdEndpointMode=preferred, Region=cn-north-1}", "expect": { "endpoint": { - "url": "https://dynamodb.us-isob-east-1.sc2s.sgov.gov" + "url": "https://dynamodb.cn-north-1.amazonaws.com.cn" } }, "params": { - "Region": "us-isob-east-1", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "AccountIdEndpointMode": "preferred", + "Region": "cn-north-1" } }, { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "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": { - "Region": "us-isob-east-1", "UseFIPS": true, - "UseDualStack": true + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "documentation": "{UseFIPS=true, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb-fips.us-isob-east-1.sc2s.sgov.gov" + "url": "https://dynamodb-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { - "Region": "us-isob-east-1", "UseFIPS": true, - "UseDualStack": false + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "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": { - "Region": "us-isob-east-1", "UseFIPS": false, - "UseDualStack": true + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { "endpoint": { - "url": "https://example.com" + "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-iso-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "ListTables" + } + ], "params": { - "Region": "us-east-1", "UseFIPS": false, "UseDualStack": false, - "Endpoint": "https://example.com" + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { "endpoint": { - "url": "https://example.com" + "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov" } }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-iso-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "preferred" + }, + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } + } + ], "params": { "UseFIPS": false, "UseDualStack": false, - "Endpoint": "https://example.com" + "AccountId": "111111111111", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { - "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + "endpoint": { + "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov" + } }, "params": { - "Region": "us-east-1", - "UseFIPS": true, + "UseFIPS": false, "UseDualStack": false, - "Endpoint": "https://example.com" + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + "endpoint": { + "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov" + } }, "params": { - "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": true, - "Endpoint": "https://example.com" - } - }, - { - "documentation": "Missing region", - "expect": { - "error": "Invalid Configuration: Missing Region" - } - }, - { - "documentation": "For custom endpoint with account ID available, FIPS enabled, and DualStack enabled", - "expect": { - "error": "Invalid Configuration: FIPS and custom endpoint are not supported" - }, - "params": { - "AccountId": "012345678901", - "UseFIPS": true, - "UseDualStack": true, - "Endpoint": "https://example.com" + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For custom endpoint with account ID available, FIPS enabled, and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { - "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + "endpoint": { + "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov" + } }, "params": { - "AccountId": "012345678901", - "UseFIPS": true, + "UseFIPS": false, "UseDualStack": false, - "Endpoint": "https://example.com" + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For custom endpoint with account ID available, FIPS disabled, and DualStack enabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-west-2:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + "endpoint": { + "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov" + } }, "params": { - "AccountId": "012345678901", "UseFIPS": false, - "UseDualStack": true, - "Endpoint": "https://example.com" + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-west-2:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For custom endpoint with account ID available, FIPS disabled, and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:s3:us-east-1:333333333333:stream/testStream], AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { "endpoint": { - "url": "https://example.com" + "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov" } }, - "operationInputs": [ - { - "builtInParams": { - "SDK::Endpoint": "https://example.com", - "AWS::Auth::AccountId": "012345678901" - }, - "operationName": "ListTables" - } - ], "params": { - "AccountId": "012345678901", "UseFIPS": false, "UseDualStack": false, - "Endpoint": "https://example.com" + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:s3:us-east-1:333333333333:stream/testStream" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For custom endpoint with empty account ID available, FIPS disabled, and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=, AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { "endpoint": { - "url": "https://example.com" + "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov" } }, "operationInputs": [ { "builtInParams": { - "SDK::Endpoint": "https://example.com", - "AWS::Auth::AccountId": "" + "AWS::Region": "us-iso-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "", + "AWS::Auth::AccountIdEndpointMode": "preferred" }, "operationName": "ListTables" } ], "params": { - "AccountId": "", "UseFIPS": false, "UseDualStack": false, - "Endpoint": "https://example.com" + "AccountId": "", + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For region local with account ID available, FIPS enabled, and DualStack enabled", + "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": "Invalid Configuration: FIPS and local endpoint are not supported" + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "Region": "local", - "AccountId": "012345678901", "UseFIPS": true, - "UseDualStack": true + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For region local with account ID available, FIPS enabled, and DualStack disabled", + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { - "error": "Invalid Configuration: FIPS and local endpoint are not supported" + "endpoint": { + "url": "https://dynamodb-fips.us-iso-east-1.c2s.ic.gov" + } }, "params": { - "Region": "local", - "AccountId": "012345678901", "UseFIPS": true, - "UseDualStack": false + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For region local with account ID available, FIPS disabled, and DualStack enabled", + "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": "Invalid Configuration: Dualstack and local endpoint are not supported" + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "Region": "local", - "AccountId": "012345678901", "UseFIPS": false, - "UseDualStack": true + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For region local with account ID available, FIPS disabled, and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "dynamodb", - "signingRegion": "us-east-1" - } - ] - }, - "url": "http://localhost:8000" + "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov" } }, "operationInputs": [ { "builtInParams": { - "AWS::Region": "local", - "AWS::Auth::AccountId": "012345678901" + "AWS::Region": "us-iso-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" }, - "operationName": "ListTables" + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } } ], "params": { - "Region": "local", - "AccountId": "012345678901", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For region local with empty account ID available, FIPS disabled, and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "dynamodb", - "signingRegion": "us-east-1" - } - ] - }, - "url": "http://localhost:8000" + "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov" } }, "operationInputs": [ { "builtInParams": { - "AWS::Region": "local", - "AWS::Auth::AccountId": "" + "AWS::Region": "us-iso-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" }, - "operationName": "ListTables" + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name" + } } ], "params": { - "Region": "local", - "AccountId": "", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For AccountIdEndpointMode required and no AccountId set", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { - "error": "AccountIdEndpointMode is required but no AccountID was provided or able to be loaded." + "endpoint": { + "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov" + } }, "operationInputs": [ { "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::Auth::AccountIdEndpointMode": "required" + "AWS::Region": "us-iso-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" }, - "operationName": "ListTables" + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:s3:us-west-2:222222222222:stream/testStream" + } } ], "params": { - "Region": "us-east-1", - "AccountIdEndpointMode": "required" + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For region us-east-1 with account ID available, FIPS enabled, and DualStack enabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=, AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb-fips.us-east-1.api.aws" + "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov" } }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::Auth::AccountId": "012345678901", - "AWS::UseFIPS": true, - "AWS::UseDualStack": true - }, - "operationName": "ListTables" - } - ], "params": { - "Region": "us-east-1", - "AccountId": "012345678901", + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "", + "AccountIdEndpointMode": "preferred", + "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 + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For region us-east-1 with account ID available, FIPS enabled, and DualStack disabled", + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb-fips.us-east-1.amazonaws.com" + "url": "https://dynamodb-fips.us-iso-east-1.c2s.ic.gov" } }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::Auth::AccountId": "012345678901", - "AWS::UseFIPS": true - }, - "operationName": "ListTables" - } - ], "params": { - "Region": "us-east-1", - "AccountId": "012345678901", "UseFIPS": true, - "UseDualStack": false + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode preferred, FIPS enabled, and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { - "endpoint": { - "url": "https://dynamodb-fips.us-east-1.amazonaws.com" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::Auth::AccountId": "012345678901", - "AWS::Auth::AccountIdEndpointMode": "preferred", - "AWS::UseFIPS": true - }, - "operationName": "ListTables" - } - ], "params": { - "Region": "us-east-1", - "AccountId": "012345678901", + "UseFIPS": false, + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], "AccountIdEndpointMode": "preferred", - "UseFIPS": true, - "UseDualStack": false + "Region": "us-iso-east-1" } }, { - "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode required, FIPS enabled, and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb-fips.us-east-1.amazonaws.com" + "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov" } }, "operationInputs": [ { "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::Auth::AccountId": "012345678901", - "AWS::Auth::AccountIdEndpointMode": "required", - "AWS::UseFIPS": true + "AWS::Region": "us-iso-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" }, - "operationName": "ListTables" + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } } ], "params": { - "Region": "us-east-1", - "AccountId": "012345678901", - "AccountIdEndpointMode": "required", - "UseFIPS": true, - "UseDualStack": false + "UseFIPS": false, + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For region us-east-1 with account ID available, FIPS disabled, and DualStack enabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.us-east-1.api.aws" + "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov" } }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::Auth::AccountId": "012345678901", - "AWS::UseDualStack": true - }, - "operationName": "ListTables" - } - ], "params": { - "Region": "us-east-1", - "AccountId": "012345678901", "UseFIPS": false, - "UseDualStack": true + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For region us-east-1 with account ID available, FIPS disabled, and DualStack enabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.us-east-1.api.aws" + "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov" } }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::Auth::AccountId": "012345678901", - "AWS::UseDualStack": true - }, - "operationName": "ListTables" - } - ], "params": { - "Region": "us-east-1", - "AccountId": "012345678901", "UseFIPS": false, - "UseDualStack": true + "UseDualStack": false, + "AccountIdEndpointMode": "preferred", + "Region": "us-iso-east-1" } }, { - "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode preferred, FIPS disabled, and DualStack enabled", + "documentation": "{UseFIPS=true, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.us-east-1.api.aws" + "url": "https://dynamodb-fips.us-gov-east-1.api.aws" } }, "params": { - "Region": "us-east-1", - "AccountId": "012345678901", + "UseFIPS": true, + "UseDualStack": true, + "AccountId": "111111111111", "AccountIdEndpointMode": "preferred", - "UseFIPS": false, - "UseDualStack": true + "Region": "us-gov-east-1" } }, { - "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode disabled, FIPS disabled, and DualStack enabled", + "documentation": "{UseFIPS=true, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.us-east-1.api.aws" + "url": "https://dynamodb.us-gov-east-1.amazonaws.com" } }, "params": { - "Region": "us-east-1", - "AccountId": "012345678901", - "AccountIdEndpointMode": "disabled", - "UseFIPS": false, - "UseDualStack": true + "UseFIPS": true, + "UseDualStack": false, + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" } }, { - "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode required, FIPS disabled, and DualStack enabled", + "documentation": "{UseFIPS=false, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.us-east-1.api.aws" + "url": "https://dynamodb.us-gov-east-1.api.aws" } }, "params": { - "Region": "us-east-1", - "AccountId": "012345678901", - "AccountIdEndpointMode": "required", "UseFIPS": false, - "UseDualStack": true + "UseDualStack": true, + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" } }, { - "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode preferred, FIPS disabled, and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { - "url": "https://012345678901.ddb.us-east-1.amazonaws.com" + "url": "https://dynamodb.us-gov-east-1.amazonaws.com" } }, "operationInputs": [ { "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::Auth::AccountId": "012345678901", + "AWS::Region": "us-gov-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", "AWS::Auth::AccountIdEndpointMode": "preferred" }, "operationName": "ListTables" } ], "params": { - "Region": "us-east-1", - "AccountId": "012345678901", "UseFIPS": false, "UseDualStack": false, - "AccountIdEndpointMode": "preferred" + "AccountId": "111111111111", + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" } }, { - "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode required, FIPS disabled, and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { - "url": "https://012345678901.ddb.us-east-1.amazonaws.com" + "url": "https://dynamodb.us-gov-east-1.amazonaws.com" } }, "operationInputs": [ { "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::Auth::AccountId": "012345678901", - "AWS::Auth::AccountIdEndpointMode": "required" + "AWS::Region": "us-gov-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "111111111111", + "AWS::Auth::AccountIdEndpointMode": "preferred" }, - "operationName": "ListTables" + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } } ], "params": { - "Region": "us-east-1", - "AccountId": "012345678901", "UseFIPS": false, "UseDualStack": false, - "AccountIdEndpointMode": "required" + "AccountId": "111111111111", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" } }, { - "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode disabled, FIPS disabled, and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.us-east-1.amazonaws.com" + "url": "https://dynamodb.us-gov-east-1.amazonaws.com" } }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::Auth::AccountId": "012345678901", - "AWS::Auth::AccountIdEndpointMode": "disabled" - }, - "operationName": "ListTables" - } - ], "params": { - "Region": "us-east-1", - "AccountId": "012345678901", "UseFIPS": false, "UseDualStack": false, - "AccountIdEndpointMode": "disabled" + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" } }, { - "documentation": "For region us-east-1 with empty account ID, FIPS disabled, and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { - "error": "Credentials-sourced account ID parameter is invalid" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::Auth::AccountId": " " - }, - "operationName": "ListTables" + "endpoint": { + "url": "https://dynamodb.us-gov-east-1.amazonaws.com" } - ], + }, "params": { - "Region": "us-east-1", - "AccountId": "", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" } }, { - "documentation": "For region cn-north-1 with account ID available, FIPS enabled, and DualStack enabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb-fips.cn-north-1.api.amazonwebservices.com.cn" + "url": "https://dynamodb.us-gov-east-1.amazonaws.com" } }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::Auth::AccountId": "012345678901", - "AWS::UseFIPS": true, - "AWS::UseDualStack": true - }, - "operationName": "ListTables" - } - ], "params": { - "Region": "cn-north-1", - "AccountId": "012345678901", - "UseFIPS": true, - "UseDualStack": true + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" } }, { - "documentation": "For region cn-north-1 with account ID available, FIPS enabled, and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-west-2:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb-fips.cn-north-1.amazonaws.com.cn" + "url": "https://dynamodb.us-gov-east-1.amazonaws.com" } }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::Auth::AccountId": "012345678901", - "AWS::UseFIPS": true - }, - "operationName": "ListTables" - } - ], "params": { - "Region": "cn-north-1", - "AccountId": "012345678901", - "UseFIPS": true, - "UseDualStack": false + "UseFIPS": false, + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-west-2:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" } }, { - "documentation": "For region cn-north-1 with account ID available, FIPS disabled, and DualStack enabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, ResourceArnList=[arn:aws:s3:us-east-1:333333333333:stream/testStream], AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.cn-north-1.api.amazonwebservices.com.cn" + "url": "https://dynamodb.us-gov-east-1.amazonaws.com" } }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::Auth::AccountId": "012345678901", - "AWS::UseDualStack": true - }, - "operationName": "ListTables" - } - ], "params": { - "Region": "cn-north-1", - "AccountId": "012345678901", "UseFIPS": false, - "UseDualStack": true + "UseDualStack": false, + "AccountId": "111111111111", + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "ResourceArnList": [ + "arn:aws:s3:us-east-1:333333333333:stream/testStream" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" } }, { - "documentation": "For region cn-north-1 with account ID available, FIPS disabled, and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=, AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.cn-north-1.amazonaws.com.cn" + "url": "https://dynamodb.us-gov-east-1.amazonaws.com" } }, "operationInputs": [ { "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::Auth::AccountId": "012345678901" + "AWS::Region": "us-gov-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountId": "", + "AWS::Auth::AccountIdEndpointMode": "preferred" }, "operationName": "ListTables" } ], "params": { - "Region": "cn-north-1", - "AccountId": "012345678901", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "AccountId": "", + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" } }, { - "documentation": "For region cn-north-1 with account ID available, AccountIdEndpointMode preferred, FIPS disabled, and DualStack disabled", + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.cn-north-1.amazonaws.com.cn" + "url": "https://dynamodb-fips.us-gov-east-1.api.aws" } }, "params": { - "Region": "cn-north-1", - "AccountId": "012345678901", + "UseFIPS": true, + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", "AccountIdEndpointMode": "preferred", - "UseFIPS": false, - "UseDualStack": false + "Region": "us-gov-east-1" } }, { - "documentation": "For region cn-north-1 with account ID available, AccountIdEndpointMode disabled, FIPS disabled, and DualStack disabled", + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.cn-north-1.amazonaws.com.cn" + "url": "https://dynamodb.us-gov-east-1.amazonaws.com" } }, "params": { - "Region": "cn-north-1", - "AccountId": "012345678901", - "AccountIdEndpointMode": "disabled", - "UseFIPS": false, - "UseDualStack": false + "UseFIPS": true, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" } }, { - "documentation": "For region cn-north-1 with account ID available, AccountIdEndpointMode required, FIPS disabled, and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.cn-north-1.amazonaws.com.cn" + "url": "https://dynamodb.us-gov-east-1.api.aws" } }, "params": { - "Region": "cn-north-1", - "AccountId": "012345678901", - "AccountIdEndpointMode": "required", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": true, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" } }, { - "documentation": "For region cn-north-1 with empty account ID available, FIPS disabled, and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.cn-north-1.amazonaws.com.cn" + "url": "https://dynamodb.us-gov-east-1.amazonaws.com" } }, "operationInputs": [ { "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::Auth::AccountId": "" + "AWS::Region": "us-gov-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" }, - "operationName": "ListTables" + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name" + } } ], "params": { - "Region": "cn-north-1", - "AccountId": "", "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region us-iso-east-1 with account ID available, 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", - "AccountId": "012345678901", - "UseFIPS": true, - "UseDualStack": true + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" } }, { - "documentation": "For region us-iso-east-1 with account ID available, FIPS enabled, and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-west-2:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb-fips.us-iso-east-1.c2s.ic.gov" + "url": "https://dynamodb.us-gov-east-1.amazonaws.com" } }, "operationInputs": [ { "builtInParams": { - "AWS::Region": "us-iso-east-1", - "AWS::Auth::AccountId": "012345678901", - "AWS::UseFIPS": true + "AWS::Region": "us-gov-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" }, - "operationName": "ListTables" + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name" + } } ], "params": { - "Region": "us-iso-east-1", - "AccountId": "012345678901", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region us-iso-east-1 with account ID available, FIPS disabled, and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-iso-east-1", - "AccountId": "012345678901", "UseFIPS": false, - "UseDualStack": true + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-west-2:222222222222:table/table_name", + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" } }, { - "documentation": "For region us-iso-east-1 with account ID available, FIPS disabled, and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:s3:us-west-2:222222222222:stream/testStream, AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov" + "url": "https://dynamodb.us-gov-east-1.amazonaws.com" } }, "operationInputs": [ { "builtInParams": { - "AWS::Region": "us-iso-east-1", - "AWS::Auth::AccountId": "012345678901" + "AWS::Region": "us-gov-east-1", + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" }, - "operationName": "ListTables" + "operationName": "DescribeTable", + "operationParams": { + "TableName": "arn:aws:s3:us-west-2:222222222222:stream/testStream" + } } ], "params": { - "Region": "us-iso-east-1", - "AccountId": "012345678901", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "ResourceArn": "arn:aws:s3:us-west-2:222222222222:stream/testStream", + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" } }, { - "documentation": "For region us-iso-east-1 with empty account ID available, FIPS disabled, and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=, AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { - "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov" + "url": "https://dynamodb.us-gov-east-1.amazonaws.com" } }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-iso-east-1", - "AWS::Auth::AccountId": "012345678901" - }, - "operationName": "ListTables" - } - ], "params": { - "Region": "us-iso-east-1", - "AccountId": "", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "ResourceArn": "", + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" } }, { - "documentation": "For region us-gov-east-1 with account ID available, FIPS enabled, and DualStack enabled", + "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { "url": "https://dynamodb-fips.us-gov-east-1.api.aws" } }, "params": { - "Region": "us-gov-east-1", - "AccountId": "012345678901", "UseFIPS": true, - "UseDualStack": true + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" } }, { - "documentation": "For region us-gov-east-1 with account ID available, FIPS enabled, and DualStack disabled", + "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { "url": "https://dynamodb.us-gov-east-1.amazonaws.com" } }, "params": { - "Region": "us-gov-east-1", - "AccountId": "012345678901", "UseFIPS": true, - "UseDualStack": false + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" } }, { - "documentation": "For region us-gov-east-1 with account ID available, FIPS disabled, and DualStack enabled", + "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { "url": "https://dynamodb.us-gov-east-1.api.aws" } }, "params": { - "Region": "us-gov-east-1", - "AccountId": "012345678901", "UseFIPS": false, - "UseDualStack": true + "UseDualStack": true, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" } }, { - "documentation": "For region us-gov-east-1 with account ID available, FIPS disabled, and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { "url": "https://dynamodb.us-gov-east-1.amazonaws.com" @@ -6104,39 +13516,66 @@ { "builtInParams": { "AWS::Region": "us-gov-east-1", - "AWS::Auth::AccountId": "012345678901" + "AWS::UseFIPS": false, + "AWS::UseDualStack": false, + "AWS::Auth::AccountIdEndpointMode": "preferred" }, - "operationName": "ListTables" + "operationName": "BatchGetItem", + "operationParams": { + "RequestItems": { + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name": { + "Keys": [ + { + "pk": { + "S": "value" + } + } + ] + } + } + } } ], "params": { - "Region": "us-gov-east-1", - "AccountId": "012345678901", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" } }, { - "documentation": "For region us-gov-east-1 with empty account ID available, FIPS disabled, and DualStack disabled", + "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-gov-east-1}", "expect": { "endpoint": { "url": "https://dynamodb.us-gov-east-1.amazonaws.com" } }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-gov-east-1", - "AWS::Auth::AccountId": "" - }, - "operationName": "ListTables" + "params": { + "UseFIPS": false, + "UseDualStack": false, + "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", + "ResourceArnList": [ + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" + ], + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" + } + }, + { + "documentation": "{UseFIPS=false, UseDualStack=false, AccountIdEndpointMode=preferred, Region=us-gov-east-1}", + "expect": { + "endpoint": { + "url": "https://dynamodb.us-gov-east-1.amazonaws.com" } - ], + }, "params": { - "Region": "us-gov-east-1", - "AccountId": "", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "AccountIdEndpointMode": "preferred", + "Region": "us-gov-east-1" } } ], @@ -6769,7 +14208,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The Amazon Resource Name (ARN) associated with the table to export.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "ExportTime": { @@ -7055,7 +14497,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The name of the table containing the requested item. You can also provide the\n Amazon Resource Name (ARN) of the table in this parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "Key": { @@ -7155,7 +14600,10 @@ "target": "com.amazonaws.dynamodb#ResourceArnString", "traits": { "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the DynamoDB resource to which the policy is attached. The\n resources you can specify include tables and streams.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } } }, @@ -7780,7 +15228,12 @@ } ], "traits": { - "smithy.api#documentation": "

Imports table data from an S3 bucket.

" + "smithy.api#documentation": "

Imports table data from an S3 bucket.

", + "smithy.rules#operationContextParams": { + "ResourceArn": { + "path": "TableCreationParameters.TableName" + } + } } }, "com.amazonaws.dynamodb#ImportTableDescription": { @@ -8468,7 +15921,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The name of the DynamoDB table. You can also provide the Amazon Resource Name (ARN) of the\n table in this parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "StreamArn": { @@ -8568,7 +16024,10 @@ "TableName": { "target": "com.amazonaws.dynamodb#TableArn", "traits": { - "smithy.api#documentation": "

Lists the backups from the table specified in TableName. You can also\n provide the Amazon Resource Name (ARN) of the table in this parameter.

" + "smithy.api#documentation": "

Lists the backups from the table specified in TableName. You can also\n provide the Amazon Resource Name (ARN) of the table in this parameter.

", + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "Limit": { @@ -8657,7 +16116,10 @@ "TableName": { "target": "com.amazonaws.dynamodb#TableArn", "traits": { - "smithy.api#documentation": "

The name of the table. You can also provide the Amazon Resource Name (ARN) of the table in this\n parameter.

" + "smithy.api#documentation": "

The name of the table. You can also provide the Amazon Resource Name (ARN) of the table in this\n parameter.

", + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "NextToken": { @@ -8738,7 +16200,10 @@ "TableArn": { "target": "com.amazonaws.dynamodb#TableArn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) associated with the exported table.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) associated with the exported table.

", + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "MaxResults": { @@ -8884,7 +16349,10 @@ "TableArn": { "target": "com.amazonaws.dynamodb#TableArn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) associated with the table that was imported to.\n

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) associated with the table that was imported to.\n

", + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "PageSize": { @@ -9075,7 +16543,10 @@ "target": "com.amazonaws.dynamodb#ResourceArnString", "traits": { "smithy.api#documentation": "

The Amazon DynamoDB resource with tags to be listed. This value is an Amazon Resource\n Name (ARN).

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "NextToken": { @@ -9426,7 +16897,7 @@ "RecoveryPeriodInDays": { "target": "com.amazonaws.dynamodb#RecoveryPeriodInDays", "traits": { - "smithy.api#documentation": "

The number of preceding days for which continuous backups are taken and maintained.\n Your table data is only recoverable to any point-in-time from within the configured\n recovery period. This parameter is optional. If no value is provided, the value will\n default to 35.

" + "smithy.api#documentation": "

The number of preceding days for which continuous backups are taken and maintained.\n Your table data is only recoverable to any point-in-time from within the configured\n recovery period. This parameter is optional.

" } }, "EarliestRestorableDateTime": { @@ -9565,7 +17036,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 local secondary indexes, the total count of NonKeyAttributes summed\n across all of the local 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.

" + "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.

" } } }, @@ -9618,7 +17089,7 @@ } }, "traits": { - "smithy.api#documentation": "

Represents the provisioned throughput settings for a specified table or index. The\n settings can be modified using the UpdateTable operation.

\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 ProvisionedThroughput or\n OnDemandThroughput 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.

" } }, "com.amazonaws.dynamodb#ProvisionedThroughputDescription": { @@ -9812,7 +17283,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The name of the table to contain the item. You can also provide the Amazon Resource Name (ARN) of the\n table in this parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "Item": { @@ -9972,7 +17446,10 @@ "target": "com.amazonaws.dynamodb#ResourceArnString", "traits": { "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the DynamoDB resource to which the policy will be attached.\n The resources you can specify include tables and streams.

\n

You can control index permissions using the base table's policy. To specify the same permission level for your table and its indexes, you can provide both the table and index Amazon Resource Name (ARN)s in the Resource field of a given Statement in your policy document. Alternatively, to specify different permissions for your table, indexes, or both, you can define multiple Statement fields in your policy document.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "Policy": { @@ -10091,7 +17568,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The name of the table containing the requested items. You can also provide the\n Amazon Resource Name (ARN) of the table in this parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "IndexName": { @@ -10213,7 +17693,7 @@ "target": "com.amazonaws.dynamodb#Integer", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The number of items evaluated, before any QueryFilter is applied. A high\n ScannedCount value with few, or no, Count results\n indicates an inefficient Query operation. For more information, see Count and\n ScannedCount in the Amazon DynamoDB Developer\n Guide.

\n

If you did not use a filter in the request, then ScannedCount is the same\n as Count.

" + "smithy.api#documentation": "

The number of items evaluated, before any QueryFilter is applied. A high\n ScannedCount value with few, or no, Count results\n indicates an inefficient Query operation. For more information, see Count and ScannedCount in the Amazon DynamoDB Developer\n Guide.

\n

If you did not use a filter in the request, then ScannedCount is the same\n as Count.

" } }, "LastEvaluatedKey": { @@ -10914,7 +18394,7 @@ } }, "traits": { - "smithy.api#documentation": "

Throughput exceeds the current throughput quota for your account. Please contact\n Amazon Web Services Support to request a\n quota increase.

", + "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#error": "client" } }, @@ -11042,7 +18522,10 @@ "target": "com.amazonaws.dynamodb#TableName", "traits": { "smithy.api#documentation": "

The name of the new table to which the backup must be restored.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "BackupArn": { @@ -11142,7 +18625,7 @@ "aws.api#clientDiscoveredEndpoint": { "required": false }, - "smithy.api#documentation": "

Restores the specified table to the specified point in time within\n EarliestRestorableDateTime and LatestRestorableDateTime.\n You can restore your table to any point in time in the last 35 days. You can set the recovery period to any value between 1 and 35 days. Any number of\n users can execute up to 50 concurrent restores (any type of restore) in a given account.

\n

When you restore using point in time recovery, DynamoDB restores your table data to\n the state based on the selected date and time (day:hour:minute:second) to a new table.

\n

Along with data, the following are also included on the new restored table using point\n in time recovery:

\n \n

You must manually set up the following on the restored table:

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

Restores the specified table to the specified point in time within\n EarliestRestorableDateTime and LatestRestorableDateTime.\n You can restore your table to any point in time in the last 35 days. You can set the\n recovery period to any value between 1 and 35 days. Any number of users can execute up\n to 50 concurrent restores (any type of restore) in a given account.

\n

When you restore using point in time recovery, DynamoDB restores your table data to\n the state based on the selected date and time (day:hour:minute:second) to a new table.

\n

Along with data, the following are also included on the new restored table using point\n in time recovery:

\n \n

You must manually set up the following on the restored table:

\n " } }, "com.amazonaws.dynamodb#RestoreTableToPointInTimeInput": { @@ -11164,7 +18647,10 @@ "target": "com.amazonaws.dynamodb#TableName", "traits": { "smithy.api#documentation": "

The name of the new table to which it must be restored to.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "UseLatestRestorableTime": { @@ -11631,7 +19117,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The name of the table containing the requested items or if you provide\n IndexName, the name of the table to which that index belongs.

\n

You can also provide the Amazon Resource Name (ARN) of the table in this parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "IndexName": { @@ -12215,13 +19704,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": { @@ -12418,12 +19907,12 @@ "Status": { "target": "com.amazonaws.dynamodb#TableStatus", "traits": { - "smithy.api#documentation": "

Represents warm throughput value of the base table..

" + "smithy.api#documentation": "

Represents warm throughput value of the base table.

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

Represents the warm throughput value (in read units per second and write units per\n second) of the base table.

" + "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.

" } }, "com.amazonaws.dynamodb#Tag": { @@ -12498,7 +19987,7 @@ "aws.api#clientDiscoveredEndpoint": { "required": false }, - "smithy.api#documentation": "

Associate a set of tags with an Amazon DynamoDB resource. You can then activate these\n user-defined tags so that they appear on the Billing and Cost Management console for\n cost allocation tracking. You can call TagResource up to five times per second, per\n account.

\n \n

For an overview on tagging DynamoDB resources, see Tagging for DynamoDB\n in the Amazon DynamoDB Developer Guide.

" + "smithy.api#documentation": "

Associate a set of tags with an Amazon DynamoDB resource. You can then activate these\n user-defined tags so that they appear on the Billing and Cost Management console for\n cost allocation tracking. You can call TagResource up to five times per second, per\n account.

\n \n

For an overview on tagging DynamoDB resources, see Tagging for DynamoDB\n in the Amazon DynamoDB Developer Guide.

" } }, "com.amazonaws.dynamodb#TagResourceInput": { @@ -12508,7 +19997,10 @@ "target": "com.amazonaws.dynamodb#ResourceArnString", "traits": { "smithy.api#documentation": "

Identifies the Amazon DynamoDB resource to which tags should be added. This value is\n an Amazon Resource Name (ARN).

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "Tags": { @@ -12680,7 +20172,12 @@ "aws.api#clientDiscoveredEndpoint": { "required": false }, - "smithy.api#documentation": "

\n TransactGetItems is a synchronous operation that atomically retrieves\n multiple items from one or more tables (but not from indexes) in a single account and\n Region. A TransactGetItems call can contain up to 100\n TransactGetItem objects, each of which contains a Get\n structure that specifies an item to retrieve from a table in the account and Region. A\n call to TransactGetItems cannot retrieve items from tables in more than one\n Amazon Web Services account or Region. The aggregate size of the items in the\n transaction cannot exceed 4 MB.

\n

DynamoDB rejects the entire TransactGetItems request if any of\n the following is true:

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

\n TransactGetItems is a synchronous operation that atomically retrieves\n multiple items from one or more tables (but not from indexes) in a single account and\n Region. A TransactGetItems call can contain up to 100\n TransactGetItem objects, each of which contains a Get\n structure that specifies an item to retrieve from a table in the account and Region. A\n call to TransactGetItems cannot retrieve items from tables in more than one\n Amazon Web Services account or Region. The aggregate size of the items in the\n transaction cannot exceed 4 MB.

\n

DynamoDB rejects the entire TransactGetItems request if any of\n the following is true:

\n ", + "smithy.rules#operationContextParams": { + "ResourceArnList": { + "path": "TransactItems[*].Get.TableName" + } + } } }, "com.amazonaws.dynamodb#TransactGetItemsInput": { @@ -12931,7 +20428,7 @@ "aws.api#clientDiscoveredEndpoint": { "required": false }, - "smithy.api#documentation": "

Removes the association of tags from an Amazon DynamoDB resource. You can call\n UntagResource up to five times per second, per account.

\n \n

For an overview on tagging DynamoDB resources, see Tagging for DynamoDB\n in the Amazon DynamoDB Developer Guide.

" + "smithy.api#documentation": "

Removes the association of tags from an Amazon DynamoDB resource. You can call\n UntagResource up to five times per second, per account.

\n \n

For an overview on tagging DynamoDB resources, see Tagging for DynamoDB\n in the Amazon DynamoDB Developer Guide.

" } }, "com.amazonaws.dynamodb#UntagResourceInput": { @@ -12941,7 +20438,10 @@ "target": "com.amazonaws.dynamodb#ResourceArnString", "traits": { "smithy.api#documentation": "

The DynamoDB resource that the tags will be removed from. This value is an Amazon\n Resource Name (ARN).

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "TagKeys": { @@ -13035,7 +20535,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 recovery period 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": { @@ -13045,7 +20545,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The name of the table. You can also provide the Amazon Resource Name (ARN) of the table in this\n parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "PointInTimeRecoverySpecification": { @@ -13101,7 +20604,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The name of the table. You can also provide the Amazon Resource Name (ARN) of the table in this\n parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "IndexName": { @@ -13226,7 +20732,10 @@ "target": "com.amazonaws.dynamodb#TableName", "traits": { "smithy.api#documentation": "

The global table name.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "ReplicaUpdates": { @@ -13300,7 +20809,10 @@ "target": "com.amazonaws.dynamodb#TableName", "traits": { "smithy.api#documentation": "

The name of the global table

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "GlobalTableBillingMode": { @@ -13456,7 +20968,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The name of the table containing the item to update. You can also provide the\n Amazon Resource Name (ARN) of the table in this parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "Key": { @@ -13615,7 +21130,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The table name for the Kinesis streaming destination input. You can also provide the\n ARN of the table in this parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "StreamArn": { @@ -13758,13 +21276,16 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The name of the table to be updated. You can also provide the Amazon Resource Name (ARN) of the table\n in this parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "BillingMode": { "target": "com.amazonaws.dynamodb#BillingMode", "traits": { - "smithy.api#documentation": "

Controls how you are charged for read and write throughput and how you manage\n capacity. When switching from pay-per-request to provisioned capacity, initial\n provisioned capacity values must be set. The initial provisioned capacity values are\n estimated based on the consumed read and write capacity of your table and global\n secondary indexes over the past 30 minutes.

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

Controls how you are charged for read and write throughput and how you manage\n capacity. When switching from pay-per-request to provisioned capacity, initial\n provisioned capacity values must be set. The initial provisioned capacity values are\n estimated based on the consumed read and write capacity of your table and global\n secondary indexes over the past 30 minutes.

\n " } }, "ProvisionedThroughput": { @@ -13812,7 +21333,7 @@ "MultiRegionConsistency": { "target": "com.amazonaws.dynamodb#MultiRegionConsistency", "traits": { - "smithy.api#documentation": "

Specifies the consistency mode for a new global table. This parameter is only valid 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 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 parameter, the global table consistency mode defaults to\n EVENTUAL.

" } }, "OnDemandThroughput": { @@ -13824,7 +21345,7 @@ "WarmThroughput": { "target": "com.amazonaws.dynamodb#WarmThroughput", "traits": { - "smithy.api#documentation": "

Represents the warm throughput (in read units per second and write units per second) for updating a table.

" + "smithy.api#documentation": "

Represents the warm throughput (in read units per second and write units per second)\n for updating a table.

" } } }, @@ -13887,7 +21408,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The name of the global table to be updated. You can also provide the Amazon Resource Name (ARN) of the\n table in this parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "ProvisionedWriteCapacityAutoScalingUpdate": { @@ -13957,7 +21481,10 @@ "target": "com.amazonaws.dynamodb#TableArn", "traits": { "smithy.api#documentation": "

The name of the table to be configured. You can also provide the Amazon Resource Name (ARN) of the\n table in this parameter.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } } }, "TimeToLiveSpecification": { diff --git a/aws/sdk/integration-tests/dynamodb/tests/account-based-endpoints.rs b/aws/sdk/integration-tests/dynamodb/tests/account-based-endpoints.rs index 1aeb751845d71a84c9c33240192d0e2ab58efd5e..f6bf451d38c6e10d3bf768ba0541891a781d1d13 100644 --- a/aws/sdk/integration-tests/dynamodb/tests/account-based-endpoints.rs +++ b/aws/sdk/integration-tests/dynamodb/tests/account-based-endpoints.rs @@ -17,16 +17,13 @@ use aws_smithy_runtime::assert_str_contains; use aws_smithy_runtime_api::http::Response; use aws_types::endpoint_config::AccountIdEndpointMode; -fn test_client(update_builder: F) -> (Client, CaptureRequestReceiver) -where - F: Fn(Builder) -> Builder, -{ +fn test_client(update_builder: fn(Builder) -> Builder) -> (Client, CaptureRequestReceiver) { let (http_client, request) = capture_request(None); let builder = Config::builder() .region(Region::new("us-east-1")) .credentials_provider( Credentials::builder() - .account_id("333333333333") + .account_id("123456789012") .access_key_id("ANOTREAL") .secret_access_key("notrealrnrELgWzOk3IfjzDKtFBhDby") .provider_name("test") @@ -38,6 +35,7 @@ where async fn call_operation( client: Client, + table_name: &str, ) -> Result> { let mut attr_v = std::collections::HashMap::new(); attr_v.insert(":s".to_string(), AttributeValue::S("value".into())); @@ -46,7 +44,7 @@ async fn call_operation( client .batch_get_item() .request_items( - "arn:aws:dynamodb:us-east-1:333333333333:table/table_name", + table_name, KeysAndAttributes::builder().keys(kv).build().unwrap(), ) .send() @@ -54,58 +52,60 @@ async fn call_operation( } #[tokio::test] -async fn account_id_should_be_included_in_request_uri() { - // With the default `AccountIdEndpointMode::Preferred` - { - let (client, rx) = test_client(std::convert::identity); - let _ = call_operation(client).await; - let req = rx.expect_request(); - assert_eq!( +async fn basic_positive_cases() { + let test_cases: &[(fn(Builder) -> Builder, &str, &str)] = &[ + ( + std::convert::identity, + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name", "https://333333333333.ddb.us-east-1.amazonaws.com/", - req.uri() - ) - } - - // With `AccountIdEndpointMode::Required` - { - let (client, rx) = - test_client(|b| b.account_id_endpoint_mode(AccountIdEndpointMode::Required)); - let _ = call_operation(client).await; - let req = rx.expect_request(); - assert_eq!( + ), + ( + std::convert::identity, + "table_name", // doesn't specify ARN for the table name + "https://123456789012.ddb.us-east-1.amazonaws.com/", // the account ID should come from credentials + ), + ( + |b: Builder| b.credentials_provider(Credentials::for_tests()), // credentials do not provide an account ID + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name", "https://333333333333.ddb.us-east-1.amazonaws.com/", - req.uri() - ) - } -} - -#[tokio::test] -async fn account_id_should_not_be_included_in_request_uri() { - // If we disable the account-based endpoints, the resulting URI should not include the account ID. - { - let (client, rx) = - test_client(|b| b.account_id_endpoint_mode(AccountIdEndpointMode::Disabled)); - let _ = call_operation(client).await; - let req = rx.expect_request(); - assert_eq!("https://dynamodb.us-east-1.amazonaws.com/", req.uri()); - } + ), + ( + |b: Builder| b.account_id_endpoint_mode(AccountIdEndpointMode::Preferred), // sets the default mode `Preferred` explicitly + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name", + "https://333333333333.ddb.us-east-1.amazonaws.com/", + ), + ( + |b: Builder| b.account_id_endpoint_mode(AccountIdEndpointMode::Disabled), + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name", + "https://dynamodb.us-east-1.amazonaws.com/", + ), + ( + |b: Builder| b.account_id_endpoint_mode(AccountIdEndpointMode::Required), + "arn:aws:dynamodb:us-east-1:333333333333:table/table_name", + "https://333333333333.ddb.us-east-1.amazonaws.com/", + ), + ]; - // If credentials do not include the account ID, neither should the resulting URI. - { - let (client, rx) = test_client(|b| b.credentials_provider(Credentials::for_tests())); - let _ = call_operation(client).await; + for (i, (update_builder, table_name, expected_uri)) in test_cases.into_iter().enumerate() { + let (client, rx) = test_client(*update_builder); + let _ = call_operation(client, table_name).await; let req = rx.expect_request(); - assert_eq!("https://dynamodb.us-east-1.amazonaws.com/", req.uri()); + assert_eq!( + *expected_uri, + req.uri(), + "on the {i}th test case where table name is `{table_name}`" + ); } } #[tokio::test] -async fn error_should_be_raised_when_account_id_is_expected_but_not_provided() { +async fn error_should_be_raised_when_account_id_is_expected_but_not_resolved() { let (client, _) = test_client(|b| { b.account_id_endpoint_mode(AccountIdEndpointMode::Required) .credentials_provider(Credentials::for_tests()) }); - let err = call_operation(client) + // doesn't specify ARN for the table name + let err = call_operation(client, "table_name") .await .err() .expect("request should fail");