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 .
The entire batch must consist of either read statements or write statements, you\n cannot mix both in one batch.
\nA 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.
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 .
The entire batch must consist of either read statements or write statements, you\n cannot mix both in one batch.
\nA 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.
The BatchGetItem
operation returns the attributes of one or more items\n from one or more tables. You identify requested items by primary key.
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.
If you request more than 100 items, BatchGetItem
returns a\n ValidationException
with the message \"Too many items requested for\n the BatchGetItem call.\"
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.
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
.
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.
\nFor more information, see Batch Operations and Error Handling in the Amazon DynamoDB\n Developer Guide.
\nBy 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.
In order to minimize response latency, BatchGetItem
may retrieve items in\n parallel.
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.
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.
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.
If you request more than 100 items, BatchGetItem
returns a\n ValidationException
with the message \"Too many items requested for\n the BatchGetItem call.\"
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.
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
.
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.
\nFor more information, see Batch Operations and Error Handling in the Amazon DynamoDB\n Developer Guide.
\nBy 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.
In order to minimize response latency, BatchGetItem
may retrieve items in\n parallel.
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.
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 BatchGetItem
will result in a ValidationException
if the\n same key is specified multiple times.
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.
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.
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.
\nEach local secondary index in the array includes the following:
\n\n IndexName
- The name of the local secondary index. Must be unique\n only for this table.
\n KeySchema
- Specifies the key schema for the local secondary index.\n The key schema must begin with the same partition key as the table.
\n Projection
- Specifies attributes that are copied (projected) from\n the table into the index. These are in addition to the primary key attributes\n and index key attributes, which are automatically projected. Each attribute\n specification is composed of:
\n ProjectionType
- One of the following:
\n KEYS_ONLY
- Only the index and primary keys are\n projected into the index.
\n INCLUDE
- Only the specified table attributes are\n projected into the index. The list of projected attributes is in\n NonKeyAttributes
.
\n ALL
- All of the table attributes are projected\n into the index.
\n NonKeyAttributes
- A list of one or more non-key attribute\n names that are projected into the secondary index. The total count of\n attributes provided in NonKeyAttributes
, summed across all\n of the secondary indexes, must not exceed 100. If you project the same\n attribute into two different indexes, this counts as two distinct\n attributes when determining the total.
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.
\nEach local secondary index in the array includes the following:
\n\n IndexName
- The name of the local secondary index. Must be unique\n only for this table.
\n KeySchema
- Specifies the key schema for the local secondary index.\n The key schema must begin with the same partition key as the table.
\n Projection
- Specifies attributes that are copied (projected) from\n the table into the index. These are in addition to the primary key attributes\n and index key attributes, which are automatically projected. Each attribute\n specification is composed of:
\n ProjectionType
- One of the following:
\n KEYS_ONLY
- Only the index and primary keys are\n projected into the index.
\n INCLUDE
- Only the specified table attributes are\n projected into the index. The list of projected attributes is in\n NonKeyAttributes
.
\n ALL
- All of the table attributes are projected\n into the index.
\n NonKeyAttributes
- A list of one or more non-key attribute\n names that are projected into the secondary index. The total count of\n attributes provided in NonKeyAttributes
, summed across all\n of the secondary indexes, must not exceed 100. If you project the same\n attribute into two different indexes, this counts as two distinct\n attributes when determining the total. This limit only applies when you\n specify the ProjectionType of INCLUDE
. You still can specify the\n ProjectionType of ALL
to project all attributes from the\n source table, even if the table has more than 100 attributes.
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\n IndexName
- The name of the global secondary index. Must be unique\n only for this table.
\n KeySchema
- Specifies the key schema for the global secondary\n index.
\n Projection
- Specifies attributes that are copied (projected) from\n the table into the index. These are in addition to the primary key attributes\n and index key attributes, which are automatically projected. Each attribute\n specification is composed of:
\n ProjectionType
- One of the following:
\n KEYS_ONLY
- Only the index and primary keys are\n projected into the index.
\n INCLUDE
- Only the specified table attributes are\n projected into the index. The list of projected attributes is in\n NonKeyAttributes
.
\n ALL
- All of the table attributes are projected\n into the index.
\n NonKeyAttributes
- A list of one or more non-key attribute\n names that are projected into the secondary index. The total count of\n attributes provided in NonKeyAttributes
, summed across all\n of the secondary indexes, must not exceed 100. If you project the same\n attribute into two different indexes, this counts as two distinct\n attributes when determining the total.
\n ProvisionedThroughput
- The provisioned throughput settings for the\n global secondary index, consisting of read and write capacity units.
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\n IndexName
- The name of the global secondary index. Must be unique\n only for this table.
\n KeySchema
- Specifies the key schema for the global secondary\n index.
\n Projection
- Specifies attributes that are copied (projected) from\n the table into the index. These are in addition to the primary key attributes\n and index key attributes, which are automatically projected. Each attribute\n specification is composed of:
\n ProjectionType
- One of the following:
\n KEYS_ONLY
- Only the index and primary keys are\n projected into the index.
\n INCLUDE
- Only the specified table attributes are\n projected into the index. The list of projected attributes is in\n NonKeyAttributes
.
\n ALL
- All of the table attributes are projected\n into the index.
\n NonKeyAttributes
- A list of one or more non-key attribute\n names that are projected into the secondary index. The total count of\n attributes provided in NonKeyAttributes
, summed across all\n of the secondary indexes, must not exceed 100. If you project the same\n attribute into two different indexes, this counts as two distinct\n attributes when determining the total. This limit only applies when you\n specify the ProjectionType of INCLUDE
. You still can\n specify the ProjectionType of ALL
to project all attributes\n from the source table, even if the table has more than 100 attributes.
\n ProvisionedThroughput
- The provisioned throughput settings for the\n global secondary index, consisting of read and write capacity units.
Controls how you are charged for read and write throughput and how you manage\n capacity. This setting can be changed later.
\n\n PROVISIONED
- We recommend using PROVISIONED
for\n predictable workloads. PROVISIONED
sets the billing mode to Provisioned capacity mode.
\n PAY_PER_REQUEST
- We recommend using PAY_PER_REQUEST
\n for unpredictable workloads. PAY_PER_REQUEST
sets the billing mode\n to On-demand capacity mode.
Controls how you are charged for read and write throughput and how you manage\n capacity. This setting can be changed later.
\n\n PAY_PER_REQUEST
- We recommend using PAY_PER_REQUEST
\n for most DynamoDB workloads. PAY_PER_REQUEST
sets the billing mode\n to On-demand capacity mode.
\n PROVISIONED
- We recommend using PROVISIONED
for\n steady workloads with predictable growth where capacity requirements can be\n reliably forecasted. PROVISIONED
sets the billing mode to Provisioned capacity mode.
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.
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 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.
You can call DescribeContinuousBackups
at a maximum rate of 10 times per\n second.
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.
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 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.
You can call DescribeContinuousBackups
at a maximum rate of 10 times per\n second.
Name of the table for which the customer wants to check the continuous backups and\n point in time recovery settings.
\nYou 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.
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.
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.
\nFor 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.
Represents the non-key attribute names which will be projected into the index.
\nFor 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.
Represents the provisioned throughput settings for a specified table or index. The\n settings can be modified using the UpdateTable
operation.
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.
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.
\nYou 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.
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.
If you did not use a filter in the request, then ScannedCount
is the same\n as Count
.
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.
If you did not use a filter in the request, then ScannedCount
is the same\n as Count
.
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.
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.
\nAlong with data, the following are also included on the new restored table using point\n in time recovery:
\nGlobal secondary indexes (GSIs)
\nLocal secondary indexes (LSIs)
\nProvisioned read and write capacity
\nEncryption settings
\nAll these settings come from the current settings of the source table at\n the time of restore.
\nYou must manually set up the following on the restored table:
\nAuto scaling policies
\nIAM policies
\nAmazon CloudWatch metrics and alarms
\nTags
\nStream settings
\nTime to Live (TTL) settings
\nPoint in time recovery settings
\nRestores 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.
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.
\nAlong with data, the following are also included on the new restored table using point\n in time recovery:
\nGlobal secondary indexes (GSIs)
\nLocal secondary indexes (LSIs)
\nProvisioned read and write capacity
\nEncryption settings
\nAll these settings come from the current settings of the source table at\n the time of restore.
\nYou must manually set up the following on the restored table:
\nAuto scaling policies
\nIAM policies
\nAmazon CloudWatch metrics and alarms
\nTags
\nStream settings
\nTime to Live (TTL) settings
\nPoint in time recovery settings
\nThe 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.
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 IndexName
- The name of the local secondary index.
\n KeySchema
- Specifies the complete index key schema. The attribute\n names in the key schema must be between 1 and 255 characters (inclusive). The\n key schema must begin with the same partition key as the table.
\n Projection
- Specifies attributes that are copied (projected) from\n the table into the index. These are in addition to the primary key attributes\n and index key attributes, which are automatically projected. Each attribute\n specification is composed of:
\n ProjectionType
- One of the following:
\n KEYS_ONLY
- Only the index and primary keys are\n projected into the index.
\n INCLUDE
- Only the specified table attributes are\n projected into the index. The list of projected attributes is in\n NonKeyAttributes
.
\n ALL
- All of the table attributes are projected\n into the index.
\n NonKeyAttributes
- A list of one or more non-key attribute\n names that are projected into the secondary index. The total count of\n attributes provided in NonKeyAttributes
, summed across all\n of the secondary indexes, must not exceed 100. If you project the same\n attribute into two different indexes, this counts as two distinct\n attributes when determining the total.
\n IndexSizeBytes
- Represents the total size of the index, in bytes.\n DynamoDB updates this value approximately every six hours. Recent changes might\n not be reflected in this value.
\n ItemCount
- Represents the number of items in the index. DynamoDB\n updates this value approximately every six hours. Recent changes might not be\n reflected in this value.
If the table is in the DELETING
state, no information about indexes will\n be returned.
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 IndexName
- The name of the local secondary index.
\n KeySchema
- Specifies the complete index key schema. The attribute\n names in the key schema must be between 1 and 255 characters (inclusive). The\n key schema must begin with the same partition key as the table.
\n Projection
- Specifies attributes that are copied (projected) from\n the table into the index. These are in addition to the primary key attributes\n and index key attributes, which are automatically projected. Each attribute\n specification is composed of:
\n ProjectionType
- One of the following:
\n KEYS_ONLY
- Only the index and primary keys are\n projected into the index.
\n INCLUDE
- Only the specified table attributes are\n projected into the index. The list of projected attributes is in\n NonKeyAttributes
.
\n ALL
- All of the table attributes are projected\n into the index.
\n NonKeyAttributes
- A list of one or more non-key attribute\n names that are projected into the secondary index. The total count of\n attributes provided in NonKeyAttributes
, summed across all\n of the secondary indexes, must not exceed 100. If you project the same\n attribute into two different indexes, this counts as two distinct\n attributes when determining the total. This limit only applies when you\n specify the ProjectionType of INCLUDE
. You still can\n specify the ProjectionType of ALL
to project all attributes\n from the source table, even if the table has more than 100 attributes.
\n IndexSizeBytes
- Represents the total size of the index, in bytes.\n DynamoDB updates this value approximately every six hours. Recent changes might\n not be reflected in this value.
\n ItemCount
- Represents the number of items in the index. DynamoDB\n updates this value approximately every six hours. Recent changes might not be\n reflected in this value.
If the table is in the DELETING
state, no information about indexes will\n be returned.
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 Backfilling
- If true, then the index is currently in the\n backfilling phase. Backfilling occurs only when a new global secondary index is\n added to the table. It is the process by which DynamoDB populates the new index\n with data from the table. (This attribute does not appear for indexes that were\n created during a CreateTable
operation.)
You can delete an index that is being created during the\n Backfilling
phase when IndexStatus
is set to\n CREATING and Backfilling
is true. You can't delete the index that\n is being created when IndexStatus
is set to CREATING and\n Backfilling
is false. (This attribute does not appear for\n indexes that were created during a CreateTable
operation.)
\n IndexName
- The name of the global secondary index.
\n IndexSizeBytes
- The total size of the global secondary index, in\n bytes. DynamoDB updates this value approximately every six hours. Recent changes\n might not be reflected in this value.
\n IndexStatus
- The current status of the global secondary\n index:
\n CREATING
- The index is being created.
\n UPDATING
- The index is being updated.
\n DELETING
- The index is being deleted.
\n ACTIVE
- The index is ready for use.
\n ItemCount
- The number of items in the global secondary index.\n DynamoDB updates this value approximately every six hours. Recent changes might\n not be reflected in this value.
\n KeySchema
- Specifies the complete index key schema. The attribute\n names in the key schema must be between 1 and 255 characters (inclusive). The\n key schema must begin with the same partition key as the table.
\n Projection
- Specifies attributes that are copied (projected) from\n the table into the index. These are in addition to the primary key attributes\n and index key attributes, which are automatically projected. Each attribute\n specification is composed of:
\n ProjectionType
- One of the following:
\n KEYS_ONLY
- Only the index and primary keys are\n projected into the index.
\n INCLUDE
- In addition to the attributes described\n in KEYS_ONLY
, the secondary index will include\n other non-key attributes that you specify.
\n ALL
- All of the table attributes are projected\n into the index.
\n NonKeyAttributes
- A list of one or more non-key attribute\n names that are projected into the secondary index. The total count of\n attributes provided in NonKeyAttributes
, summed across all\n of the secondary indexes, must not exceed 100. If you project the same\n attribute into two different indexes, this counts as two distinct\n attributes when determining the total.
\n ProvisionedThroughput
- The provisioned throughput settings for the\n global secondary index, consisting of read and write capacity units, along with\n data about increases and decreases.
If the table is in the DELETING
state, no information about indexes will\n be returned.
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 Backfilling
- If true, then the index is currently in the\n backfilling phase. Backfilling occurs only when a new global secondary index is\n added to the table. It is the process by which DynamoDB populates the new index\n with data from the table. (This attribute does not appear for indexes that were\n created during a CreateTable
operation.)
You can delete an index that is being created during the\n Backfilling
phase when IndexStatus
is set to\n CREATING and Backfilling
is true. You can't delete the index that\n is being created when IndexStatus
is set to CREATING and\n Backfilling
is false. (This attribute does not appear for\n indexes that were created during a CreateTable
operation.)
\n IndexName
- The name of the global secondary index.
\n IndexSizeBytes
- The total size of the global secondary index, in\n bytes. DynamoDB updates this value approximately every six hours. Recent changes\n might not be reflected in this value.
\n IndexStatus
- The current status of the global secondary\n index:
\n CREATING
- The index is being created.
\n UPDATING
- The index is being updated.
\n DELETING
- The index is being deleted.
\n ACTIVE
- The index is ready for use.
\n ItemCount
- The number of items in the global secondary index.\n DynamoDB updates this value approximately every six hours. Recent changes might\n not be reflected in this value.
\n KeySchema
- Specifies the complete index key schema. The attribute\n names in the key schema must be between 1 and 255 characters (inclusive). The\n key schema must begin with the same partition key as the table.
\n Projection
- Specifies attributes that are copied (projected) from\n the table into the index. These are in addition to the primary key attributes\n and index key attributes, which are automatically projected. Each attribute\n specification is composed of:
\n ProjectionType
- One of the following:
\n KEYS_ONLY
- Only the index and primary keys are\n projected into the index.
\n INCLUDE
- In addition to the attributes described\n in KEYS_ONLY
, the secondary index will include\n other non-key attributes that you specify.
\n ALL
- All of the table attributes are projected\n into the index.
\n NonKeyAttributes
- A list of one or more non-key attribute\n names that are projected into the secondary index. The total count of\n attributes provided in NonKeyAttributes
, summed across all\n of the secondary indexes, must not exceed 100. If you project the same\n attribute into two different indexes, this counts as two distinct\n attributes when determining the total. This limit only applies when you\n specify the ProjectionType of INCLUDE
. You still can\n specify the ProjectionType of ALL
to project all attributes\n from the source table, even if the table has more than 100 attributes.
\n ProvisionedThroughput
- The provisioned throughput settings for the\n global secondary index, consisting of read and write capacity units, along with\n data about increases and decreases.
If the table is in the DELETING
state, no information about indexes will\n be returned.
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 TagResource
is an asynchronous operation. If you issue a ListTagsOfResource request immediately after a TagResource
request, DynamoDB might return your previous tag set, if there was one, or an empty tag set. This is because ListTagsOfResource
uses an eventually consistent query, and the metadata for your tags or table might not be available at that moment. Wait for a few seconds, and then try the ListTagsOfResource
request again.
The application or removal of tags using TagResource
and UntagResource
APIs is eventually consistent. ListTagsOfResource
API will only reflect the changes after a few seconds.
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 TagResource
is an asynchronous operation. If you issue a ListTagsOfResource request immediately after a\n TagResource
request, DynamoDB might return your\n previous tag set, if there was one, or an empty tag set. This is because\n ListTagsOfResource
uses an eventually consistent query, and the\n metadata for your tags or table might not be available at that moment. Wait for\n a few seconds, and then try the ListTagsOfResource
request\n again.
The application or removal of tags using TagResource
and\n UntagResource
APIs is eventually consistent.\n ListTagsOfResource
API will only reflect the changes after a\n few seconds.
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.
DynamoDB rejects the entire TransactGetItems
request if any of\n the following is true:
A conflicting operation is in the process of updating an item to be\n read.
\nThere is insufficient provisioned capacity for the transaction to be\n completed.
\nThere is a user error, such as an invalid data format.
\nThe aggregate size of the items in the transaction exceeded 4 MB.
\n\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.
DynamoDB rejects the entire TransactGetItems
request if any of\n the following is true:
A conflicting operation is in the process of updating an item to be\n read.
\nThere is insufficient provisioned capacity for the transaction to be\n completed.
\nThere is a user error, such as an invalid data format.
\nThe aggregate size of the items in the transaction exceeded 4 MB.
\nRemoves the association of tags from an Amazon DynamoDB resource. You can call\n UntagResource
up to five times per second, per account.
\n UntagResource
is an asynchronous operation. If you issue a ListTagsOfResource request immediately after an UntagResource
request, DynamoDB might return your previous tag set, if there was one, or an empty tag set. This is because ListTagsOfResource
uses an eventually consistent query, and the metadata for your tags or table might not be available at that moment. Wait for a few seconds, and then try the ListTagsOfResource
request again.
The application or removal of tags using TagResource
and UntagResource
APIs is eventually consistent. ListTagsOfResource
API will only reflect the changes after a few seconds.
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 UntagResource
is an asynchronous operation. If you issue a ListTagsOfResource request immediately after an\n UntagResource
request, DynamoDB might return your\n previous tag set, if there was one, or an empty tag set. This is because\n ListTagsOfResource
uses an eventually consistent query, and the\n metadata for your tags or table might not be available at that moment. Wait for\n a few seconds, and then try the ListTagsOfResource
request\n again.
The application or removal of tags using TagResource
and\n UntagResource
APIs is eventually consistent.\n ListTagsOfResource
API will only reflect the changes after a\n few seconds.
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.
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 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 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.
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 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.
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\n PROVISIONED
- We recommend using PROVISIONED
for\n predictable workloads. PROVISIONED
sets the billing mode to Provisioned capacity mode.
\n PAY_PER_REQUEST
- We recommend using PAY_PER_REQUEST
\n for unpredictable workloads. PAY_PER_REQUEST
sets the billing mode\n to On-demand capacity mode.
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\n PAY_PER_REQUEST
- We recommend using PAY_PER_REQUEST
\n for most DynamoDB workloads. PAY_PER_REQUEST
sets the billing mode\n to On-demand capacity mode.
\n PROVISIONED
- We recommend using PROVISIONED
for\n steady workloads with predictable growth where capacity requirements can be\n reliably forecasted. PROVISIONED
sets the billing mode to Provisioned capacity mode.
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.
\nYou can specify one of the following consistency modes:
\n\n EVENTUAL
: Configures a new global table for multi-Region eventual consistency. This is the default consistency mode for global tables.
\n STRONG
: Configures a new global table for multi-Region strong consistency (preview).
Multi-Region strong consistency (MRSC) is a new DynamoDB global tables capability currently available in preview mode. For more information, see Global tables multi-Region strong consistency.
\nIf you don't specify this parameter, the global table consistency mode defaults to EVENTUAL
.
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.
\nYou can specify one of the following consistency modes:
\n\n EVENTUAL
: Configures a new global table for multi-Region eventual\n consistency. This is the default consistency mode for global tables.
\n STRONG
: Configures a new global table for multi-Region strong\n consistency (preview).
Multi-Region strong consistency (MRSC) is a new DynamoDB global\n tables capability currently available in preview mode. For more information,\n see Global tables multi-Region strong consistency.
\nIf you don't specify this parameter, the global table consistency mode defaults to\n EVENTUAL
.
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