diff --git a/.changes/2.1156.0.json b/.changes/2.1156.0.json new file mode 100644 index 0000000000..6a68675354 --- /dev/null +++ b/.changes/2.1156.0.json @@ -0,0 +1,17 @@ +[ + { + "type": "feature", + "category": "RedshiftData", + "description": "This release adds a new --workgroup-name field to operations that connect to an endpoint. Customers can now execute queries against their serverless workgroups." + }, + { + "type": "feature", + "category": "RedshiftServerless", + "description": "Add new API operations for Amazon Redshift Serverless, a new way of using Amazon Redshift without needing to manually manage provisioned clusters. The new operations let you interact with Redshift Serverless resources, such as create snapshots, list VPC endpoints, delete resource policies, and more." + }, + { + "type": "feature", + "category": "SecurityHub", + "description": "Added Threats field for security findings. Added new resource details for ECS Container, ECS Task, RDS SecurityGroup, Kinesis Stream, EC2 TransitGateway, EFS AccessPoint, CloudFormation Stack, CloudWatch Alarm, VPC Peering Connection and WAF Rules" + } +] \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 2249398da6..a2fd679010 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,7 +1,12 @@ # Changelog for AWS SDK for JavaScript - + +## 2.1156.0 +* feature: RedshiftData: This release adds a new --workgroup-name field to operations that connect to an endpoint. Customers can now execute queries against their serverless workgroups. +* feature: RedshiftServerless: Add new API operations for Amazon Redshift Serverless, a new way of using Amazon Redshift without needing to manually manage provisioned clusters. The new operations let you interact with Redshift Serverless resources, such as create snapshots, list VPC endpoints, delete resource policies, and more. +* feature: SecurityHub: Added Threats field for security findings. Added new resource details for ECS Container, ECS Task, RDS SecurityGroup, Kinesis Stream, EC2 TransitGateway, EFS AccessPoint, CloudFormation Stack, CloudWatch Alarm, VPC Peering Connection and WAF Rules + ## 2.1155.0 * feature: Finspacedata: This release adds a new set of APIs, GetPermissionGroup, DisassociateUserFromPermissionGroup, AssociateUserToPermissionGroup, ListPermissionGroupsByUser, ListUsersByPermissionGroup. * feature: GuardDuty: Adds finding fields available from GuardDuty Console. Adds FreeTrial related operations. Deprecates the use of various APIs related to Master Accounts and Replace them with Administrator Accounts. diff --git a/README.md b/README.md index 284535986a..9cb25db14d 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,7 @@ For release notes, see the [CHANGELOG](https://github.com/aws/aws-sdk-js/blob/ma To use the SDK in the browser, simply add the following script tag to your HTML pages: - + You can also build a custom browser SDK with your specified set of AWS services. This can allow you to reduce the SDK's size, specify different API versions of diff --git a/apis/metadata.json b/apis/metadata.json index 25577808c1..0d4b134ab1 100644 --- a/apis/metadata.json +++ b/apis/metadata.json @@ -1166,5 +1166,8 @@ }, "m2": { "name": "M2" + }, + "redshiftserverless": { + "name": "RedshiftServerless" } } \ No newline at end of file diff --git a/apis/redshift-data-2019-12-20.min.json b/apis/redshift-data-2019-12-20.min.json index c5a1df3fad..ab94f167a6 100644 --- a/apis/redshift-data-2019-12-20.min.json +++ b/apis/redshift-data-2019-12-20.min.json @@ -32,7 +32,8 @@ "StatementName": {}, "WithEvent": { "type": "boolean" - } + }, + "WorkgroupName": {} } }, "output": { @@ -45,7 +46,8 @@ "Database": {}, "DbUser": {}, "Id": {}, - "SecretArn": {} + "SecretArn": {}, + "WorkgroupName": {} } } }, @@ -99,7 +101,7 @@ }, "Id": {}, "QueryParameters": { - "shape": "Sh" + "shape": "Si" }, "QueryString": {}, "RedshiftPid": { @@ -154,7 +156,8 @@ }, "UpdatedAt": { "type": "timestamp" - } + }, + "WorkgroupName": {} } } }, @@ -175,7 +178,8 @@ "NextToken": {}, "Schema": {}, "SecretArn": {}, - "Table": {} + "Table": {}, + "WorkgroupName": {} } }, "output": { @@ -184,7 +188,7 @@ "ColumnList": { "type": "list", "member": { - "shape": "St" + "shape": "Su" } }, "NextToken": {}, @@ -204,14 +208,15 @@ "Database": {}, "DbUser": {}, "Parameters": { - "shape": "Sh" + "shape": "Si" }, "SecretArn": {}, "Sql": {}, "StatementName": {}, "WithEvent": { "type": "boolean" - } + }, + "WorkgroupName": {} } }, "output": { @@ -224,7 +229,8 @@ "Database": {}, "DbUser": {}, "Id": {}, - "SecretArn": {} + "SecretArn": {}, + "WorkgroupName": {} } } }, @@ -248,7 +254,7 @@ "ColumnMetadata": { "type": "list", "member": { - "shape": "St" + "shape": "Su" } }, "NextToken": {}, @@ -300,7 +306,8 @@ "type": "integer" }, "NextToken": {}, - "SecretArn": {} + "SecretArn": {}, + "WorkgroupName": {} } }, "output": { @@ -330,7 +337,8 @@ }, "NextToken": {}, "SchemaPattern": {}, - "SecretArn": {} + "SecretArn": {}, + "WorkgroupName": {} } }, "output": { @@ -382,7 +390,7 @@ "type": "boolean" }, "QueryParameters": { - "shape": "Sh" + "shape": "Si" }, "QueryString": {}, "QueryStrings": { @@ -418,7 +426,8 @@ "NextToken": {}, "SchemaPattern": {}, "SecretArn": {}, - "TablePattern": {} + "TablePattern": {}, + "WorkgroupName": {} } }, "output": { @@ -441,7 +450,7 @@ } }, "shapes": { - "Sh": { + "Si": { "type": "list", "member": { "type": "structure", @@ -455,7 +464,7 @@ } } }, - "St": { + "Su": { "type": "structure", "members": { "columnDefault": {}, diff --git a/apis/redshift-data-2019-12-20.normal.json b/apis/redshift-data-2019-12-20.normal.json index d3d62add97..2cf3ae08a8 100644 --- a/apis/redshift-data-2019-12-20.normal.json +++ b/apis/redshift-data-2019-12-20.normal.json @@ -36,7 +36,7 @@ "shape": "BatchExecuteStatementException" } ], - "documentation": "
Runs one or more SQL statements, which can be data manipulation language (DML) or data definition language (DDL). Depending on the authorization method, use one of the following combinations of request parameters:
Secrets Manager - when connecting to a cluster, specify the Amazon Resource Name (ARN) of the secret, the database name, and the cluster identifier that matches the cluster in the secret. When connecting to a serverless endpoint, specify the Amazon Resource Name (ARN) of the secret and the database name.
Temporary credentials - when connecting to a cluster, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials
operation is required. When connecting to a serverless endpoint, specify the database name.
Runs one or more SQL statements, which can be data manipulation language (DML) or data definition language (DDL). Depending on the authorization method, use one of the following combinations of request parameters:
Secrets Manager - when connecting to a cluster, specify the Amazon Resource Name (ARN) of the secret, the database name, and the cluster identifier that matches the cluster in the secret. When connecting to a serverless workgroup, specify the Amazon Resource Name (ARN) of the secret and the database name.
Temporary credentials - when connecting to a cluster, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials
operation is required. When connecting to a serverless workgroup, specify the workgroup name and database name. Also, permission to call the redshift-serverless:GetCredentials
operation is required.
Describes the detailed information about a table from metadata in the cluster. The information includes its columns. A token is returned to page through the column list. Depending on the authorization method, use one of the following combinations of request parameters:
Secrets Manager - when connecting to a cluster, specify the Amazon Resource Name (ARN) of the secret, the database name, and the cluster identifier that matches the cluster in the secret. When connecting to a serverless endpoint, specify the Amazon Resource Name (ARN) of the secret and the database name.
Temporary credentials - when connecting to a cluster, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials
operation is required. When connecting to a serverless endpoint, specify the database name.
Describes the detailed information about a table from metadata in the cluster. The information includes its columns. A token is returned to page through the column list. Depending on the authorization method, use one of the following combinations of request parameters:
Secrets Manager - when connecting to a cluster, specify the Amazon Resource Name (ARN) of the secret, the database name, and the cluster identifier that matches the cluster in the secret. When connecting to a serverless workgroup, specify the Amazon Resource Name (ARN) of the secret and the database name.
Temporary credentials - when connecting to a cluster, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials
operation is required. When connecting to a serverless workgroup, specify the workgroup name and database name. Also, permission to call the redshift-serverless:GetCredentials
operation is required.
Runs an SQL statement, which can be data manipulation language (DML) or data definition language (DDL). This statement must be a single SQL statement. Depending on the authorization method, use one of the following combinations of request parameters:
Secrets Manager - when connecting to a cluster, specify the Amazon Resource Name (ARN) of the secret, the database name, and the cluster identifier that matches the cluster in the secret. When connecting to a serverless endpoint, specify the Amazon Resource Name (ARN) of the secret and the database name.
Temporary credentials - when connecting to a cluster, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials
operation is required. When connecting to a serverless endpoint, specify the database name.
Runs an SQL statement, which can be data manipulation language (DML) or data definition language (DDL). This statement must be a single SQL statement. Depending on the authorization method, use one of the following combinations of request parameters:
Secrets Manager - when connecting to a cluster, specify the Amazon Resource Name (ARN) of the secret, the database name, and the cluster identifier that matches the cluster in the secret. When connecting to a serverless workgroup, specify the Amazon Resource Name (ARN) of the secret and the database name.
Temporary credentials - when connecting to a cluster, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials
operation is required. When connecting to a serverless workgroup, specify the workgroup name and database name. Also, permission to call the redshift-serverless:GetCredentials
operation is required.
List the databases in a cluster. A token is returned to page through the database list. Depending on the authorization method, use one of the following combinations of request parameters:
Secrets Manager - when connecting to a cluster, specify the Amazon Resource Name (ARN) of the secret, the database name, and the cluster identifier that matches the cluster in the secret. When connecting to a serverless endpoint, specify the Amazon Resource Name (ARN) of the secret and the database name.
Temporary credentials - when connecting to a cluster, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials
operation is required. When connecting to a serverless endpoint, specify the database name.
List the databases in a cluster. A token is returned to page through the database list. Depending on the authorization method, use one of the following combinations of request parameters:
Secrets Manager - when connecting to a cluster, specify the Amazon Resource Name (ARN) of the secret, the database name, and the cluster identifier that matches the cluster in the secret. When connecting to a serverless workgroup, specify the Amazon Resource Name (ARN) of the secret and the database name.
Temporary credentials - when connecting to a cluster, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials
operation is required. When connecting to a serverless workgroup, specify the workgroup name and database name. Also, permission to call the redshift-serverless:GetCredentials
operation is required.
Lists the schemas in a database. A token is returned to page through the schema list. Depending on the authorization method, use one of the following combinations of request parameters:
Secrets Manager - when connecting to a cluster, specify the Amazon Resource Name (ARN) of the secret, the database name, and the cluster identifier that matches the cluster in the secret. When connecting to a serverless endpoint, specify the Amazon Resource Name (ARN) of the secret and the database name.
Temporary credentials - when connecting to a cluster, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials
operation is required. When connecting to a serverless endpoint, specify the database name.
Lists the schemas in a database. A token is returned to page through the schema list. Depending on the authorization method, use one of the following combinations of request parameters:
Secrets Manager - when connecting to a cluster, specify the Amazon Resource Name (ARN) of the secret, the database name, and the cluster identifier that matches the cluster in the secret. When connecting to a serverless workgroup, specify the Amazon Resource Name (ARN) of the secret and the database name.
Temporary credentials - when connecting to a cluster, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials
operation is required. When connecting to a serverless workgroup, specify the workgroup name and database name. Also, permission to call the redshift-serverless:GetCredentials
operation is required.
List the tables in a database. If neither SchemaPattern
nor TablePattern
are specified, then all tables in the database are returned. A token is returned to page through the table list. Depending on the authorization method, use one of the following combinations of request parameters:
Secrets Manager - when connecting to a cluster, specify the Amazon Resource Name (ARN) of the secret, the database name, and the cluster identifier that matches the cluster in the secret. When connecting to a serverless endpoint, specify the Amazon Resource Name (ARN) of the secret and the database name.
Temporary credentials - when connecting to a cluster, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials
operation is required. When connecting to a serverless endpoint, specify the database name.
List the tables in a database. If neither SchemaPattern
nor TablePattern
are specified, then all tables in the database are returned. A token is returned to page through the table list. Depending on the authorization method, use one of the following combinations of request parameters:
Secrets Manager - when connecting to a cluster, specify the Amazon Resource Name (ARN) of the secret, the database name, and the cluster identifier that matches the cluster in the secret. When connecting to a serverless workgroup, specify the Amazon Resource Name (ARN) of the secret and the database name.
Temporary credentials - when connecting to a cluster, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials
operation is required. When connecting to a serverless workgroup, specify the workgroup name and database name. Also, permission to call the redshift-serverless:GetCredentials
operation is required.
A value that indicates whether to send an event to the Amazon EventBridge event bus after the SQL statements run.
" + }, + "WorkgroupName": { + "shape": "WorkgroupNameString", + "documentation": "The serverless workgroup name. This parameter is required when connecting to a serverless workgroup and authenticating using either Secrets Manager or temporary credentials.
" } } }, @@ -307,7 +311,7 @@ "members": { "ClusterIdentifier": { "shape": "Location", - "documentation": "The cluster identifier. This parameter is not returned when connecting to a serverless endpoint.
" + "documentation": "The cluster identifier. This element is not returned when connecting to a serverless workgroup.
" }, "CreatedAt": { "shape": "Timestamp", @@ -328,6 +332,10 @@ "SecretArn": { "shape": "SecretArn", "documentation": "The name or ARN of the secret that enables access to the database.
" + }, + "WorkgroupName": { + "shape": "WorkgroupNameString", + "documentation": "The serverless workgroup name. This element is not returned when connecting to a provisioned cluster.
" } } }, @@ -536,6 +544,10 @@ "UpdatedAt": { "shape": "Timestamp", "documentation": "The date and time (UTC) that the metadata for the SQL statement was last updated. An example is the time the status last changed.
" + }, + "WorkgroupName": { + "shape": "WorkgroupNameString", + "documentation": "The serverless workgroup name.
" } } }, @@ -580,6 +592,10 @@ "Table": { "shape": "String", "documentation": "The table name. If no table is specified, then all tables for all matching schemas are returned. If no table and no schema is specified, then all tables for all schemas in the database are returned
" + }, + "WorkgroupName": { + "shape": "WorkgroupNameString", + "documentation": "The serverless workgroup name. This parameter is required when connecting to a serverless workgroup and authenticating using either Secrets Manager or temporary credentials.
" } } }, @@ -638,6 +654,10 @@ "WithEvent": { "shape": "Boolean", "documentation": "A value that indicates whether to send an event to the Amazon EventBridge event bus after the SQL statement runs.
" + }, + "WorkgroupName": { + "shape": "WorkgroupNameString", + "documentation": "The serverless workgroup name. This parameter is required when connecting to a serverless workgroup and authenticating using either Secrets Manager or temporary credentials.
" } } }, @@ -646,7 +666,7 @@ "members": { "ClusterIdentifier": { "shape": "Location", - "documentation": "The cluster identifier. This parameter is not returned when connecting to a serverless endpoint.
" + "documentation": "The cluster identifier. This element is not returned when connecting to a serverless workgroup.
" }, "CreatedAt": { "shape": "Timestamp", @@ -667,6 +687,10 @@ "SecretArn": { "shape": "SecretArn", "documentation": "The name or ARN of the secret that enables access to the database.
" + }, + "WorkgroupName": { + "shape": "WorkgroupNameString", + "documentation": "The serverless workgroup name. This element is not returned when connecting to a provisioned cluster.
" } } }, @@ -779,6 +803,10 @@ "SecretArn": { "shape": "SecretArn", "documentation": "The name or ARN of the secret that enables access to the database. This parameter is required when authenticating using Secrets Manager.
" + }, + "WorkgroupName": { + "shape": "WorkgroupNameString", + "documentation": "The serverless workgroup name. This parameter is required when connecting to a serverless workgroup and authenticating using either Secrets Manager or temporary credentials.
" } } }, @@ -832,6 +860,10 @@ "SecretArn": { "shape": "SecretArn", "documentation": "The name or ARN of the secret that enables access to the database. This parameter is required when authenticating using Secrets Manager.
" + }, + "WorkgroupName": { + "shape": "WorkgroupNameString", + "documentation": "The serverless workgroup name. This parameter is required when connecting to a serverless workgroup and authenticating using either Secrets Manager or temporary credentials.
" } } }, @@ -935,6 +967,10 @@ "TablePattern": { "shape": "String", "documentation": "A pattern to filter results by table name. Within a table pattern, \"%\" means match any substring of 0 or more characters and \"_\" means match any one character. Only table name entries matching the search pattern are returned. If TablePattern
is not specified, then all tables that match SchemaPattern
are returned. If neither SchemaPattern
or TablePattern
are specified, then all tables are returned.
The serverless workgroup name. This parameter is required when connecting to a serverless workgroup and authenticating using either Secrets Manager or temporary credentials.
" } } }, @@ -1203,9 +1239,15 @@ "Timestamp": { "type": "timestamp" }, + "WorkgroupNameString": { + "type": "string", + "max": 64, + "min": 3, + "pattern": "^[a-z0-9-]+$" + }, "bool": { "type": "boolean" } }, - "documentation": "You can use the Amazon Redshift Data API to run queries on Amazon Redshift tables. You can run SQL statements, which are committed if the statement succeeds.
For more information about the Amazon Redshift Data API, see Using the Amazon Redshift Data API in the Amazon Redshift Cluster Management Guide.
" + "documentation": "You can use the Amazon Redshift Data API to run queries on Amazon Redshift tables. You can run SQL statements, which are committed if the statement succeeds.
For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Cluster Management Guide.
" } \ No newline at end of file diff --git a/apis/redshiftserverless-2021-04-21.examples.json b/apis/redshiftserverless-2021-04-21.examples.json new file mode 100644 index 0000000000..0ea7e3b0bb --- /dev/null +++ b/apis/redshiftserverless-2021-04-21.examples.json @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff --git a/apis/redshiftserverless-2021-04-21.min.json b/apis/redshiftserverless-2021-04-21.min.json new file mode 100644 index 0000000000..d9962344e8 --- /dev/null +++ b/apis/redshiftserverless-2021-04-21.min.json @@ -0,0 +1,1206 @@ +{ + "version": "2.0", + "metadata": { + "apiVersion": "2021-04-21", + "endpointPrefix": "redshift-serverless", + "jsonVersion": "1.1", + "protocol": "json", + "serviceFullName": "Redshift Serverless", + "serviceId": "RedshiftServerless", + "signatureVersion": "v4", + "signingName": "redshift-serverless", + "targetPrefix": "RedshiftServerless", + "uid": "redshiftserverless-2021-04-21" + }, + "operations": { + "ConvertRecoveryPointToSnapshot": { + "input": { + "type": "structure", + "required": [ + "recoveryPointId", + "snapshotName" + ], + "members": { + "recoveryPointId": {}, + "retentionPeriod": { + "type": "integer" + }, + "snapshotName": {} + } + }, + "output": { + "type": "structure", + "members": { + "snapshot": { + "shape": "S5" + } + } + } + }, + "CreateEndpointAccess": { + "input": { + "type": "structure", + "required": [ + "endpointName", + "subnetIds", + "workgroupName" + ], + "members": { + "endpointName": {}, + "subnetIds": { + "shape": "Sd" + }, + "vpcSecurityGroupIds": { + "shape": "Sf" + }, + "workgroupName": {} + } + }, + "output": { + "type": "structure", + "members": { + "endpoint": { + "shape": "Si" + } + } + }, + "idempotent": true + }, + "CreateNamespace": { + "input": { + "type": "structure", + "required": [ + "namespaceName" + ], + "members": { + "adminUserPassword": { + "shape": "Sp" + }, + "adminUsername": { + "shape": "Sq" + }, + "dbName": {}, + "defaultIamRoleArn": {}, + "iamRoles": { + "shape": "Sr" + }, + "kmsKeyId": {}, + "logExports": { + "shape": "St" + }, + "namespaceName": {}, + "tags": { + "shape": "Sw" + } + } + }, + "output": { + "type": "structure", + "members": { + "namespace": { + "shape": "S11" + } + } + }, + "idempotent": true + }, + "CreateSnapshot": { + "input": { + "type": "structure", + "required": [ + "namespaceName", + "snapshotName" + ], + "members": { + "namespaceName": {}, + "retentionPeriod": { + "type": "integer" + }, + "snapshotName": {} + } + }, + "output": { + "type": "structure", + "members": { + "snapshot": { + "shape": "S5" + } + } + }, + "idempotent": true + }, + "CreateUsageLimit": { + "input": { + "type": "structure", + "required": [ + "amount", + "resourceArn", + "usageType" + ], + "members": { + "amount": { + "type": "long" + }, + "breachAction": {}, + "period": {}, + "resourceArn": {}, + "usageType": {} + } + }, + "output": { + "type": "structure", + "members": { + "usageLimit": { + "shape": "S1a" + } + } + }, + "idempotent": true + }, + "CreateWorkgroup": { + "input": { + "type": "structure", + "required": [ + "namespaceName", + "workgroupName" + ], + "members": { + "baseCapacity": { + "type": "integer" + }, + "configParameters": { + "shape": "S1c" + }, + "enhancedVpcRouting": { + "type": "boolean" + }, + "namespaceName": {}, + "publiclyAccessible": { + "type": "boolean" + }, + "securityGroupIds": { + "shape": "S1h" + }, + "subnetIds": { + "shape": "Sd" + }, + "tags": { + "shape": "Sw" + }, + "workgroupName": {} + } + }, + "output": { + "type": "structure", + "members": { + "workgroup": { + "shape": "S1l" + } + } + }, + "idempotent": true + }, + "DeleteEndpointAccess": { + "input": { + "type": "structure", + "required": [ + "endpointName" + ], + "members": { + "endpointName": {} + } + }, + "output": { + "type": "structure", + "members": { + "endpoint": { + "shape": "Si" + } + } + }, + "idempotent": true + }, + "DeleteNamespace": { + "input": { + "type": "structure", + "required": [ + "namespaceName" + ], + "members": { + "finalSnapshotName": {}, + "finalSnapshotRetentionPeriod": { + "type": "integer" + }, + "namespaceName": {} + } + }, + "output": { + "type": "structure", + "required": [ + "namespace" + ], + "members": { + "namespace": { + "shape": "S11" + } + } + }, + "idempotent": true + }, + "DeleteResourcePolicy": { + "input": { + "type": "structure", + "required": [ + "resourceArn" + ], + "members": { + "resourceArn": {} + } + }, + "output": { + "type": "structure", + "members": {} + } + }, + "DeleteSnapshot": { + "input": { + "type": "structure", + "required": [ + "snapshotName" + ], + "members": { + "snapshotName": {} + } + }, + "output": { + "type": "structure", + "members": { + "snapshot": { + "shape": "S5" + } + } + }, + "idempotent": true + }, + "DeleteUsageLimit": { + "input": { + "type": "structure", + "required": [ + "usageLimitId" + ], + "members": { + "usageLimitId": {} + } + }, + "output": { + "type": "structure", + "members": { + "usageLimit": { + "shape": "S1a" + } + } + }, + "idempotent": true + }, + "DeleteWorkgroup": { + "input": { + "type": "structure", + "required": [ + "workgroupName" + ], + "members": { + "workgroupName": {} + } + }, + "output": { + "type": "structure", + "required": [ + "workgroup" + ], + "members": { + "workgroup": { + "shape": "S1l" + } + } + }, + "idempotent": true + }, + "GetCredentials": { + "input": { + "type": "structure", + "required": [ + "workgroupName" + ], + "members": { + "dbName": {}, + "durationSeconds": { + "type": "integer" + }, + "workgroupName": {} + } + }, + "output": { + "type": "structure", + "members": { + "dbPassword": { + "shape": "Sp" + }, + "dbUser": { + "shape": "Sq" + }, + "expiration": { + "type": "timestamp" + }, + "nextRefreshTime": { + "type": "timestamp" + } + } + } + }, + "GetEndpointAccess": { + "input": { + "type": "structure", + "required": [ + "endpointName" + ], + "members": { + "endpointName": {} + } + }, + "output": { + "type": "structure", + "members": { + "endpoint": { + "shape": "Si" + } + } + } + }, + "GetNamespace": { + "input": { + "type": "structure", + "required": [ + "namespaceName" + ], + "members": { + "namespaceName": {} + } + }, + "output": { + "type": "structure", + "required": [ + "namespace" + ], + "members": { + "namespace": { + "shape": "S11" + } + } + } + }, + "GetRecoveryPoint": { + "input": { + "type": "structure", + "required": [ + "recoveryPointId" + ], + "members": { + "recoveryPointId": {} + } + }, + "output": { + "type": "structure", + "members": { + "recoveryPoint": { + "shape": "S2b" + } + } + } + }, + "GetResourcePolicy": { + "input": { + "type": "structure", + "required": [ + "resourceArn" + ], + "members": { + "resourceArn": {} + } + }, + "output": { + "type": "structure", + "members": { + "resourcePolicy": { + "shape": "S2e" + } + } + } + }, + "GetSnapshot": { + "input": { + "type": "structure", + "members": { + "ownerAccount": {}, + "snapshotArn": {}, + "snapshotName": {} + } + }, + "output": { + "type": "structure", + "members": { + "snapshot": { + "shape": "S5" + } + } + } + }, + "GetUsageLimit": { + "input": { + "type": "structure", + "required": [ + "usageLimitId" + ], + "members": { + "usageLimitId": {} + } + }, + "output": { + "type": "structure", + "members": { + "usageLimit": { + "shape": "S1a" + } + } + } + }, + "GetWorkgroup": { + "input": { + "type": "structure", + "required": [ + "workgroupName" + ], + "members": { + "workgroupName": {} + } + }, + "output": { + "type": "structure", + "required": [ + "workgroup" + ], + "members": { + "workgroup": { + "shape": "S1l" + } + } + } + }, + "ListEndpointAccess": { + "input": { + "type": "structure", + "members": { + "maxResults": { + "type": "integer" + }, + "nextToken": {}, + "vpcId": {}, + "workgroupName": {} + } + }, + "output": { + "type": "structure", + "required": [ + "endpoints" + ], + "members": { + "endpoints": { + "type": "list", + "member": { + "shape": "Si" + } + }, + "nextToken": {} + } + } + }, + "ListNamespaces": { + "input": { + "type": "structure", + "members": { + "maxResults": { + "type": "integer" + }, + "nextToken": {} + } + }, + "output": { + "type": "structure", + "required": [ + "namespaces" + ], + "members": { + "namespaces": { + "type": "list", + "member": { + "shape": "S11" + } + }, + "nextToken": {} + } + } + }, + "ListRecoveryPoints": { + "input": { + "type": "structure", + "members": { + "endTime": { + "type": "timestamp" + }, + "maxResults": { + "type": "integer" + }, + "namespaceName": {}, + "nextToken": {}, + "startTime": { + "type": "timestamp" + } + } + }, + "output": { + "type": "structure", + "members": { + "nextToken": {}, + "recoveryPoints": { + "type": "list", + "member": { + "shape": "S2b" + } + } + } + } + }, + "ListSnapshots": { + "input": { + "type": "structure", + "members": { + "endTime": { + "type": "timestamp" + }, + "maxResults": { + "type": "integer" + }, + "namespaceArn": {}, + "namespaceName": {}, + "nextToken": {}, + "ownerAccount": {}, + "startTime": { + "type": "timestamp" + } + } + }, + "output": { + "type": "structure", + "members": { + "nextToken": {}, + "snapshots": { + "type": "list", + "member": { + "shape": "S5" + } + } + } + } + }, + "ListTagsForResource": { + "input": { + "type": "structure", + "required": [ + "resourceArn" + ], + "members": { + "resourceArn": {} + } + }, + "output": { + "type": "structure", + "members": { + "tags": { + "shape": "Sw" + } + } + } + }, + "ListUsageLimits": { + "input": { + "type": "structure", + "members": { + "maxResults": { + "type": "integer" + }, + "nextToken": {}, + "resourceArn": {}, + "usageType": {} + } + }, + "output": { + "type": "structure", + "members": { + "nextToken": {}, + "usageLimits": { + "type": "list", + "member": { + "shape": "S1a" + } + } + } + } + }, + "ListWorkgroups": { + "input": { + "type": "structure", + "members": { + "maxResults": { + "type": "integer" + }, + "nextToken": {} + } + }, + "output": { + "type": "structure", + "required": [ + "workgroups" + ], + "members": { + "nextToken": {}, + "workgroups": { + "type": "list", + "member": { + "shape": "S1l" + } + } + } + } + }, + "PutResourcePolicy": { + "input": { + "type": "structure", + "required": [ + "policy", + "resourceArn" + ], + "members": { + "policy": {}, + "resourceArn": {} + } + }, + "output": { + "type": "structure", + "members": { + "resourcePolicy": { + "shape": "S2e" + } + } + } + }, + "RestoreFromRecoveryPoint": { + "input": { + "type": "structure", + "required": [ + "namespaceName", + "recoveryPointId", + "workgroupName" + ], + "members": { + "namespaceName": {}, + "recoveryPointId": {}, + "workgroupName": {} + } + }, + "output": { + "type": "structure", + "members": { + "namespace": { + "shape": "S11" + }, + "recoveryPointId": {} + } + } + }, + "RestoreFromSnapshot": { + "input": { + "type": "structure", + "required": [ + "namespaceName", + "workgroupName" + ], + "members": { + "namespaceName": {}, + "ownerAccount": {}, + "snapshotArn": {}, + "snapshotName": {}, + "workgroupName": {} + } + }, + "output": { + "type": "structure", + "members": { + "namespace": { + "shape": "S11" + }, + "ownerAccount": {}, + "snapshotName": {} + } + }, + "idempotent": true + }, + "TagResource": { + "input": { + "type": "structure", + "required": [ + "resourceArn", + "tags" + ], + "members": { + "resourceArn": {}, + "tags": { + "shape": "Sw" + } + } + }, + "output": { + "type": "structure", + "members": {} + } + }, + "UntagResource": { + "input": { + "type": "structure", + "required": [ + "resourceArn", + "tagKeys" + ], + "members": { + "resourceArn": {}, + "tagKeys": { + "type": "list", + "member": {} + } + } + }, + "output": { + "type": "structure", + "members": {} + } + }, + "UpdateEndpointAccess": { + "input": { + "type": "structure", + "required": [ + "endpointName" + ], + "members": { + "endpointName": {}, + "vpcSecurityGroupIds": { + "shape": "Sf" + } + } + }, + "output": { + "type": "structure", + "members": { + "endpoint": { + "shape": "Si" + } + } + } + }, + "UpdateNamespace": { + "input": { + "type": "structure", + "required": [ + "namespaceName" + ], + "members": { + "adminUserPassword": { + "shape": "Sp" + }, + "adminUsername": { + "shape": "Sq" + }, + "defaultIamRoleArn": {}, + "iamRoles": { + "shape": "Sr" + }, + "kmsKeyId": {}, + "logExports": { + "shape": "St" + }, + "namespaceName": {} + } + }, + "output": { + "type": "structure", + "required": [ + "namespace" + ], + "members": { + "namespace": { + "shape": "S11" + } + } + } + }, + "UpdateSnapshot": { + "input": { + "type": "structure", + "required": [ + "snapshotName" + ], + "members": { + "retentionPeriod": { + "type": "integer" + }, + "snapshotName": {} + } + }, + "output": { + "type": "structure", + "members": { + "snapshot": { + "shape": "S5" + } + } + } + }, + "UpdateUsageLimit": { + "input": { + "type": "structure", + "required": [ + "usageLimitId" + ], + "members": { + "amount": { + "type": "long" + }, + "breachAction": {}, + "usageLimitId": {} + } + }, + "output": { + "type": "structure", + "members": { + "usageLimit": { + "shape": "S1a" + } + } + } + }, + "UpdateWorkgroup": { + "input": { + "type": "structure", + "required": [ + "workgroupName" + ], + "members": { + "baseCapacity": { + "type": "integer" + }, + "configParameters": { + "shape": "S1c" + }, + "enhancedVpcRouting": { + "type": "boolean" + }, + "publiclyAccessible": { + "type": "boolean" + }, + "securityGroupIds": { + "shape": "S1h" + }, + "subnetIds": { + "shape": "Sd" + }, + "workgroupName": {} + } + }, + "output": { + "type": "structure", + "required": [ + "workgroup" + ], + "members": { + "workgroup": { + "shape": "S1l" + } + } + } + } + }, + "shapes": { + "S5": { + "type": "structure", + "members": { + "accountsWithProvisionedRestoreAccess": { + "shape": "S6" + }, + "accountsWithRestoreAccess": { + "shape": "S6" + }, + "actualIncrementalBackupSizeInMegaBytes": { + "type": "double" + }, + "adminUsername": {}, + "backupProgressInMegaBytes": { + "type": "double" + }, + "currentBackupRateInMegaBytesPerSecond": { + "type": "double" + }, + "elapsedTimeInSeconds": { + "type": "long" + }, + "estimatedSecondsToCompletion": { + "type": "long" + }, + "kmsKeyId": {}, + "namespaceArn": {}, + "namespaceName": {}, + "ownerAccount": {}, + "snapshotArn": {}, + "snapshotCreateTime": { + "shape": "Sa" + }, + "snapshotName": {}, + "snapshotRemainingDays": { + "type": "integer" + }, + "snapshotRetentionPeriod": { + "type": "integer" + }, + "snapshotRetentionStartTime": { + "shape": "Sa" + }, + "status": {}, + "totalBackupSizeInMegaBytes": { + "type": "double" + } + } + }, + "S6": { + "type": "list", + "member": {} + }, + "Sa": { + "type": "timestamp", + "timestampFormat": "iso8601" + }, + "Sd": { + "type": "list", + "member": {} + }, + "Sf": { + "type": "list", + "member": {} + }, + "Si": { + "type": "structure", + "members": { + "address": {}, + "endpointArn": {}, + "endpointCreateTime": { + "shape": "Sa" + }, + "endpointName": {}, + "endpointStatus": {}, + "port": { + "type": "integer" + }, + "subnetIds": { + "shape": "Sd" + }, + "vpcEndpoint": { + "shape": "Sj" + }, + "vpcSecurityGroups": { + "type": "list", + "member": { + "type": "structure", + "members": { + "status": {}, + "vpcSecurityGroupId": {} + } + } + }, + "workgroupName": {} + } + }, + "Sj": { + "type": "structure", + "members": { + "networkInterfaces": { + "type": "list", + "member": { + "type": "structure", + "members": { + "availabilityZone": {}, + "networkInterfaceId": {}, + "privateIpAddress": {}, + "subnetId": {} + } + } + }, + "vpcEndpointId": {}, + "vpcId": {} + } + }, + "Sp": { + "type": "string", + "sensitive": true + }, + "Sq": { + "type": "string", + "sensitive": true + }, + "Sr": { + "type": "list", + "member": {} + }, + "St": { + "type": "list", + "member": {} + }, + "Sw": { + "type": "list", + "member": { + "type": "structure", + "required": [ + "key", + "value" + ], + "members": { + "key": {}, + "value": {} + } + } + }, + "S11": { + "type": "structure", + "members": { + "adminUsername": { + "shape": "Sq" + }, + "creationDate": { + "shape": "Sa" + }, + "dbName": {}, + "defaultIamRoleArn": {}, + "iamRoles": { + "shape": "Sr" + }, + "kmsKeyId": {}, + "logExports": { + "shape": "St" + }, + "namespaceArn": {}, + "namespaceId": {}, + "namespaceName": {}, + "status": {} + } + }, + "S1a": { + "type": "structure", + "members": { + "amount": { + "type": "long" + }, + "breachAction": {}, + "period": {}, + "resourceArn": {}, + "usageLimitArn": {}, + "usageLimitId": {}, + "usageType": {} + } + }, + "S1c": { + "type": "list", + "member": { + "type": "structure", + "members": { + "parameterKey": {}, + "parameterValue": {} + } + } + }, + "S1h": { + "type": "list", + "member": {} + }, + "S1l": { + "type": "structure", + "members": { + "baseCapacity": { + "type": "integer" + }, + "configParameters": { + "shape": "S1c" + }, + "creationDate": { + "shape": "Sa" + }, + "endpoint": { + "type": "structure", + "members": { + "address": {}, + "port": { + "type": "integer" + }, + "vpcEndpoints": { + "type": "list", + "member": { + "shape": "Sj" + } + } + } + }, + "enhancedVpcRouting": { + "type": "boolean" + }, + "namespaceName": {}, + "publiclyAccessible": { + "type": "boolean" + }, + "securityGroupIds": { + "shape": "S1h" + }, + "status": {}, + "subnetIds": { + "shape": "Sd" + }, + "workgroupArn": {}, + "workgroupId": {}, + "workgroupName": {} + } + }, + "S2b": { + "type": "structure", + "members": { + "namespaceName": {}, + "recoveryPointCreateTime": { + "shape": "Sa" + }, + "recoveryPointId": {}, + "totalSizeInMegaBytes": { + "type": "double" + }, + "workgroupName": {} + } + }, + "S2e": { + "type": "structure", + "members": { + "policy": {}, + "resourceArn": {} + } + } + } +} \ No newline at end of file diff --git a/apis/redshiftserverless-2021-04-21.normal.json b/apis/redshiftserverless-2021-04-21.normal.json new file mode 100644 index 0000000000..b9adcba096 --- /dev/null +++ b/apis/redshiftserverless-2021-04-21.normal.json @@ -0,0 +1,2924 @@ +{ + "version": "2.0", + "metadata": { + "apiVersion": "2021-04-21", + "endpointPrefix": "redshift-serverless", + "jsonVersion": "1.1", + "protocol": "json", + "serviceFullName": "Redshift Serverless", + "serviceId": "RedshiftServerless", + "signatureVersion": "v4", + "signingName": "redshift-serverless", + "targetPrefix": "RedshiftServerless", + "uid": "redshiftserverless-2021-04-21" + }, + "operations": { + "ConvertRecoveryPointToSnapshot": { + "name": "ConvertRecoveryPointToSnapshot", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ConvertRecoveryPointToSnapshotRequest" + }, + "output": { + "shape": "ConvertRecoveryPointToSnapshotResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "documentation": "Converts a recovery point to a snapshot. For more information about recovery points and snapshots, see Working with snapshots and recovery points.
" + }, + "CreateEndpointAccess": { + "name": "CreateEndpointAccess", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "CreateEndpointAccessRequest" + }, + "output": { + "shape": "CreateEndpointAccessResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "documentation": "Creates an Amazon Redshift Serverless managed VPC endpoint.
", + "idempotent": true + }, + "CreateNamespace": { + "name": "CreateNamespace", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "CreateNamespaceRequest" + }, + "output": { + "shape": "CreateNamespaceResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "TooManyTagsException" + } + ], + "documentation": "Creates a namespace in Amazon Redshift Serverless.
", + "idempotent": true + }, + "CreateSnapshot": { + "name": "CreateSnapshot", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "CreateSnapshotRequest" + }, + "output": { + "shape": "CreateSnapshotResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "documentation": "Creates a snapshot of all databases in a namespace. For more information about snapshots, see Working with snapshots and recovery points.
", + "idempotent": true + }, + "CreateUsageLimit": { + "name": "CreateUsageLimit", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "CreateUsageLimitRequest" + }, + "output": { + "shape": "CreateUsageLimitResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "documentation": "Creates a usage limit for a specified Amazon Redshift Serverless usage type. The usage limit is identified by the returned usage limit identifier.
", + "idempotent": true + }, + "CreateWorkgroup": { + "name": "CreateWorkgroup", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "CreateWorkgroupRequest" + }, + "output": { + "shape": "CreateWorkgroupResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "InsufficientCapacityException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "TooManyTagsException" + } + ], + "documentation": "Creates an workgroup in Amazon Redshift Serverless.
", + "idempotent": true + }, + "DeleteEndpointAccess": { + "name": "DeleteEndpointAccess", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DeleteEndpointAccessRequest" + }, + "output": { + "shape": "DeleteEndpointAccessResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Deletes an Amazon Redshift Serverless managed VPC endpoint.
", + "idempotent": true + }, + "DeleteNamespace": { + "name": "DeleteNamespace", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DeleteNamespaceRequest" + }, + "output": { + "shape": "DeleteNamespaceResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Deletes a namespace from Amazon Redshift Serverless. Before you delete the namespace, you can create a final snapshot that has all of the data within the namespace.
", + "idempotent": true + }, + "DeleteResourcePolicy": { + "name": "DeleteResourcePolicy", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DeleteResourcePolicyRequest" + }, + "output": { + "shape": "DeleteResourcePolicyResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Deletes the specified resource policy.
" + }, + "DeleteSnapshot": { + "name": "DeleteSnapshot", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DeleteSnapshotRequest" + }, + "output": { + "shape": "DeleteSnapshotResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Deletes a snapshot from Amazon Redshift Serverless.
", + "idempotent": true + }, + "DeleteUsageLimit": { + "name": "DeleteUsageLimit", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DeleteUsageLimitRequest" + }, + "output": { + "shape": "DeleteUsageLimitResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Deletes a usage limit from Amazon Redshift Serverless.
", + "idempotent": true + }, + "DeleteWorkgroup": { + "name": "DeleteWorkgroup", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DeleteWorkgroupRequest" + }, + "output": { + "shape": "DeleteWorkgroupResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Deletes a workgroup.
", + "idempotent": true + }, + "GetCredentials": { + "name": "GetCredentials", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "GetCredentialsRequest" + }, + "output": { + "shape": "GetCredentialsResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Returns a database user name and temporary password with temporary authorization to log in to Amazon Redshift Serverless.
By default, the temporary credentials expire in 900 seconds. You can optionally specify a duration between 900 seconds (15 minutes) and 3600 seconds (60 minutes).
<p> The Identity and Access Management (IAM) user or role that runs GetCredentials must have an IAM policy attached that allows access to all necessary actions and resources. </p> <p> If the <code>DbName</code> parameter is specified, the IAM policy must allow access to the resource dbname for the specified database name.</p>
"
+ },
+ "GetEndpointAccess": {
+ "name": "GetEndpointAccess",
+ "http": {
+ "method": "POST",
+ "requestUri": "/"
+ },
+ "input": {
+ "shape": "GetEndpointAccessRequest"
+ },
+ "output": {
+ "shape": "GetEndpointAccessResponse"
+ },
+ "errors": [
+ {
+ "shape": "InternalServerException"
+ },
+ {
+ "shape": "ResourceNotFoundException"
+ },
+ {
+ "shape": "ConflictException"
+ },
+ {
+ "shape": "ValidationException"
+ }
+ ],
+ "documentation": "Returns information, such as the name, about a VPC endpoint.
" + }, + "GetNamespace": { + "name": "GetNamespace", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "GetNamespaceRequest" + }, + "output": { + "shape": "GetNamespaceResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Returns information about a namespace in Amazon Redshift Serverless.
" + }, + "GetRecoveryPoint": { + "name": "GetRecoveryPoint", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "GetRecoveryPointRequest" + }, + "output": { + "shape": "GetRecoveryPointResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Returns information about a recovery point.
" + }, + "GetResourcePolicy": { + "name": "GetResourcePolicy", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "GetResourcePolicyRequest" + }, + "output": { + "shape": "GetResourcePolicyResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Returns a resource policy.
" + }, + "GetSnapshot": { + "name": "GetSnapshot", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "GetSnapshotRequest" + }, + "output": { + "shape": "GetSnapshotResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Returns information about a specific snapshot.
" + }, + "GetUsageLimit": { + "name": "GetUsageLimit", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "GetUsageLimitRequest" + }, + "output": { + "shape": "GetUsageLimitResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Returns information about a usage limit.
" + }, + "GetWorkgroup": { + "name": "GetWorkgroup", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "GetWorkgroupRequest" + }, + "output": { + "shape": "GetWorkgroupResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Returns information about a specific workgroup.
" + }, + "ListEndpointAccess": { + "name": "ListEndpointAccess", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListEndpointAccessRequest" + }, + "output": { + "shape": "ListEndpointAccessResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Returns an array of EndpointAccess
objects and relevant information.
Returns information about a list of specified namespaces.
" + }, + "ListRecoveryPoints": { + "name": "ListRecoveryPoints", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListRecoveryPointsRequest" + }, + "output": { + "shape": "ListRecoveryPointsResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Returns an array of recovery points.
" + }, + "ListSnapshots": { + "name": "ListSnapshots", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListSnapshotsRequest" + }, + "output": { + "shape": "ListSnapshotsResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Returns a list of snapshots.
" + }, + "ListTagsForResource": { + "name": "ListTagsForResource", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListTagsForResourceRequest" + }, + "output": { + "shape": "ListTagsForResourceResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ThrottlingException" + } + ], + "documentation": "Lists the tags assigned to a resource.
" + }, + "ListUsageLimits": { + "name": "ListUsageLimits", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListUsageLimitsRequest" + }, + "output": { + "shape": "ListUsageLimitsResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "InvalidPaginationException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Lists all usage limits within Amazon Redshift Serverless.
" + }, + "ListWorkgroups": { + "name": "ListWorkgroups", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListWorkgroupsRequest" + }, + "output": { + "shape": "ListWorkgroupsResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Returns information about a list of specified workgroups.
" + }, + "PutResourcePolicy": { + "name": "PutResourcePolicy", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "PutResourcePolicyRequest" + }, + "output": { + "shape": "PutResourcePolicyResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "documentation": "Creates or updates a resource policy. Currently, you can use policies to share snapshots across Amazon Web Services accounts.
" + }, + "RestoreFromRecoveryPoint": { + "name": "RestoreFromRecoveryPoint", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "RestoreFromRecoveryPointRequest" + }, + "output": { + "shape": "RestoreFromRecoveryPointResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Restore the data from a recovery point.
" + }, + "RestoreFromSnapshot": { + "name": "RestoreFromSnapshot", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "RestoreFromSnapshotRequest" + }, + "output": { + "shape": "RestoreFromSnapshotResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "documentation": "Restores a namespace from a snapshot.
", + "idempotent": true + }, + "TagResource": { + "name": "TagResource", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "TagResourceRequest" + }, + "output": { + "shape": "TagResourceResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "TooManyTagsException" + }, + { + "shape": "ThrottlingException" + } + ], + "documentation": "Assigns one or more tags to a resource.
" + }, + "UntagResource": { + "name": "UntagResource", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "UntagResourceRequest" + }, + "output": { + "shape": "UntagResourceResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ThrottlingException" + } + ], + "documentation": "Removes a tag or set of tags from a resource.
" + }, + "UpdateEndpointAccess": { + "name": "UpdateEndpointAccess", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "UpdateEndpointAccessRequest" + }, + "output": { + "shape": "UpdateEndpointAccessResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "documentation": "Updates an Amazon Redshift Serverless managed endpoint.
" + }, + "UpdateNamespace": { + "name": "UpdateNamespace", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "UpdateNamespaceRequest" + }, + "output": { + "shape": "UpdateNamespaceResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Updates a namespace with the specified settings.
" + }, + "UpdateSnapshot": { + "name": "UpdateSnapshot", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "UpdateSnapshotRequest" + }, + "output": { + "shape": "UpdateSnapshotResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Updates a snapshot.
" + }, + "UpdateUsageLimit": { + "name": "UpdateUsageLimit", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "UpdateUsageLimitRequest" + }, + "output": { + "shape": "UpdateUsageLimitResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Update a usage limit in Amazon Redshift Serverless. You can't update the usage type or period of a usage limit.
" + }, + "UpdateWorkgroup": { + "name": "UpdateWorkgroup", + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "UpdateWorkgroupRequest" + }, + "output": { + "shape": "UpdateWorkgroupResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "InsufficientCapacityException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Updates a workgroup with the specified configuration settings.
" + } + }, + "shapes": { + "AccountIdList": { + "type": "list", + "member": { + "shape": "String" + } + }, + "AmazonResourceName": { + "type": "string", + "max": 1011, + "min": 1 + }, + "Boolean": { + "type": "boolean", + "box": true + }, + "ConfigParameter": { + "type": "structure", + "members": { + "parameterKey": { + "shape": "ParameterKey", + "documentation": "The key of the parameter. The options are datestyle
, enable_user_activity_logging
, query_group
, search_path
, and max_query_execution_time
.
The value of the parameter to set.
" + } + }, + "documentation": "An array of key-value pairs to set for advanced control over Amazon Redshift Serverless.
" + }, + "ConfigParameterList": { + "type": "list", + "member": { + "shape": "ConfigParameter" + } + }, + "ConvertRecoveryPointToSnapshotRequest": { + "type": "structure", + "required": [ + "recoveryPointId", + "snapshotName" + ], + "members": { + "recoveryPointId": { + "shape": "String", + "documentation": "The unique identifier of the recovery point.
" + }, + "retentionPeriod": { + "shape": "Integer", + "documentation": "How long to retain the snapshot.
" + }, + "snapshotName": { + "shape": "String", + "documentation": "The name of the snapshot.
" + } + } + }, + "ConvertRecoveryPointToSnapshotResponse": { + "type": "structure", + "members": { + "snapshot": { + "shape": "Snapshot", + "documentation": "The snapshot converted from the recovery point.
" + } + } + }, + "CreateEndpointAccessRequest": { + "type": "structure", + "required": [ + "endpointName", + "subnetIds", + "workgroupName" + ], + "members": { + "endpointName": { + "shape": "String", + "documentation": "The name of the VPC endpoint. An endpoint name must contain 1-30 characters. Valid characters are A-Z, a-z, 0-9, and hyphen(-). The first character must be a letter. The name can't contain two consecutive hyphens or end with a hyphen.
" + }, + "subnetIds": { + "shape": "SubnetIdList", + "documentation": "The unique identifers of subnets from which Amazon Redshift Serverless chooses one to deploy a VPC endpoint.
" + }, + "vpcSecurityGroupIds": { + "shape": "VpcSecurityGroupIdList", + "documentation": "The unique identifiers of the security group that defines the ports, protocols, and sources for inbound traffic that you are authorizing into your endpoint.
" + }, + "workgroupName": { + "shape": "String", + "documentation": "The name of the workgroup to associate with the VPC endpoint.
" + } + } + }, + "CreateEndpointAccessResponse": { + "type": "structure", + "members": { + "endpoint": { + "shape": "EndpointAccess", + "documentation": "The created VPC endpoint.
" + } + } + }, + "CreateNamespaceRequest": { + "type": "structure", + "required": [ + "namespaceName" + ], + "members": { + "adminUserPassword": { + "shape": "DbPassword", + "documentation": "The password of the administrator for the first database created in the namespace.
" + }, + "adminUsername": { + "shape": "DbUser", + "documentation": "The username of the administrator for the first database created in the namespace.
" + }, + "dbName": { + "shape": "String", + "documentation": "The name of the first database created in the namespace.
" + }, + "defaultIamRoleArn": { + "shape": "String", + "documentation": "The Amazon Resource Name (ARN) of the IAM role to set as a default in the namespace.
" + }, + "iamRoles": { + "shape": "IamRoleArnList", + "documentation": "A list of IAM roles to associate with the namespace.
" + }, + "kmsKeyId": { + "shape": "String", + "documentation": "The ID of the Amazon Web Services Key Management Service key used to encrypt your data.
" + }, + "logExports": { + "shape": "LogExportList", + "documentation": "The types of logs the namespace can export. Available export types are userlog
, connectionlog
, and useractivitylog
.
The name of the namespace.
" + }, + "tags": { + "shape": "TagList", + "documentation": "A list of tag instances.
" + } + } + }, + "CreateNamespaceResponse": { + "type": "structure", + "members": { + "namespace": { + "shape": "Namespace", + "documentation": "The created namespace object.
" + } + } + }, + "CreateSnapshotRequest": { + "type": "structure", + "required": [ + "namespaceName", + "snapshotName" + ], + "members": { + "namespaceName": { + "shape": "String", + "documentation": "The namespace to create a snapshot for.
" + }, + "retentionPeriod": { + "shape": "Integer", + "documentation": "How long to retain the created snapshot.
" + }, + "snapshotName": { + "shape": "String", + "documentation": "The name of the snapshot.
" + } + } + }, + "CreateSnapshotResponse": { + "type": "structure", + "members": { + "snapshot": { + "shape": "Snapshot", + "documentation": "The created snapshot object.
" + } + } + }, + "CreateUsageLimitRequest": { + "type": "structure", + "required": [ + "amount", + "resourceArn", + "usageType" + ], + "members": { + "amount": { + "shape": "Long", + "documentation": "The limit amount. If time-based, this amount is in Redshift Processing Units (RPU) consumed per hour. If data-based, this amount is in terabytes (TB) of data transferred between Regions in cross-account sharing. The value must be a positive number.
" + }, + "breachAction": { + "shape": "UsageLimitBreachAction", + "documentation": "The action that Amazon Redshift Serverless takes when the limit is reached. The default is log.
" + }, + "period": { + "shape": "UsageLimitPeriod", + "documentation": "The time period that the amount applies to. A weekly period begins on Sunday. The default is monthly.
" + }, + "resourceArn": { + "shape": "String", + "documentation": "The Amazon Resource Name (ARN) of the Amazon Redshift Serverless resource to create the usage limit for.
" + }, + "usageType": { + "shape": "UsageLimitUsageType", + "documentation": "The type of Amazon Redshift Serverless usage to create a usage limit for.
" + } + } + }, + "CreateUsageLimitResponse": { + "type": "structure", + "members": { + "usageLimit": { + "shape": "UsageLimit", + "documentation": "The returned usage limit object.
" + } + } + }, + "CreateWorkgroupRequest": { + "type": "structure", + "required": [ + "namespaceName", + "workgroupName" + ], + "members": { + "baseCapacity": { + "shape": "Integer", + "documentation": "The base data warehouse capacity of the workgroup in Redshift Processing Units (RPUs).
" + }, + "configParameters": { + "shape": "ConfigParameterList", + "documentation": "An array of parameters to set for more control over a serverless database. The options are datestyle
, enable_user_activity_logging
, query_group
, search_path
, and max_query_execution_time
.
The value that specifies whether to turn on enhanced virtual private cloud (VPC) routing, which forces Amazon Redshift Serverless to route traffic through your VPC instead of over the internet.
" + }, + "namespaceName": { + "shape": "NamespaceName", + "documentation": "The name of the namespace to associate with the workgroup.
" + }, + "publiclyAccessible": { + "shape": "Boolean", + "documentation": "A value that specifies whether the workgroup can be accessed from a public network.
" + }, + "securityGroupIds": { + "shape": "SecurityGroupIdList", + "documentation": "An array of security group IDs to associate with the workgroup.
" + }, + "subnetIds": { + "shape": "SubnetIdList", + "documentation": "An array of VPC subnet IDs to associate with the workgroup.
" + }, + "tags": { + "shape": "TagList", + "documentation": "A array of tag instances.
" + }, + "workgroupName": { + "shape": "WorkgroupName", + "documentation": "The name of the created workgroup.
" + } + } + }, + "CreateWorkgroupResponse": { + "type": "structure", + "members": { + "workgroup": { + "shape": "Workgroup", + "documentation": "The created workgroup object.
" + } + } + }, + "DbName": { + "type": "string" + }, + "DbPassword": { + "type": "string", + "sensitive": true + }, + "DbUser": { + "type": "string", + "sensitive": true + }, + "DeleteEndpointAccessRequest": { + "type": "structure", + "required": [ + "endpointName" + ], + "members": { + "endpointName": { + "shape": "String", + "documentation": "The name of the VPC endpoint to delete.
" + } + } + }, + "DeleteEndpointAccessResponse": { + "type": "structure", + "members": { + "endpoint": { + "shape": "EndpointAccess", + "documentation": "The deleted VPC endpoint.
" + } + } + }, + "DeleteNamespaceRequest": { + "type": "structure", + "required": [ + "namespaceName" + ], + "members": { + "finalSnapshotName": { + "shape": "String", + "documentation": "The name of the snapshot to be created before the namespace is deleted.
" + }, + "finalSnapshotRetentionPeriod": { + "shape": "Integer", + "documentation": "How long to retain the final snapshot.
" + }, + "namespaceName": { + "shape": "NamespaceName", + "documentation": "The name of the namespace to delete.
" + } + } + }, + "DeleteNamespaceResponse": { + "type": "structure", + "required": [ + "namespace" + ], + "members": { + "namespace": { + "shape": "Namespace", + "documentation": "The deleted namespace object.
" + } + } + }, + "DeleteResourcePolicyRequest": { + "type": "structure", + "required": [ + "resourceArn" + ], + "members": { + "resourceArn": { + "shape": "String", + "documentation": "The Amazon Resource Name (ARN) of the policy to delete.
" + } + } + }, + "DeleteResourcePolicyResponse": { + "type": "structure", + "members": {} + }, + "DeleteSnapshotRequest": { + "type": "structure", + "required": [ + "snapshotName" + ], + "members": { + "snapshotName": { + "shape": "String", + "documentation": "The name of the snapshot to be deleted.
" + } + } + }, + "DeleteSnapshotResponse": { + "type": "structure", + "members": { + "snapshot": { + "shape": "Snapshot", + "documentation": "The deleted snapshot object.
" + } + } + }, + "DeleteUsageLimitRequest": { + "type": "structure", + "required": [ + "usageLimitId" + ], + "members": { + "usageLimitId": { + "shape": "String", + "documentation": "The unique identifier of the usage limit to delete.
" + } + } + }, + "DeleteUsageLimitResponse": { + "type": "structure", + "members": { + "usageLimit": { + "shape": "UsageLimit", + "documentation": "The deleted usage limit object.
" + } + } + }, + "DeleteWorkgroupRequest": { + "type": "structure", + "required": [ + "workgroupName" + ], + "members": { + "workgroupName": { + "shape": "WorkgroupName", + "documentation": "The name of the workgroup to be deleted.
" + } + } + }, + "DeleteWorkgroupResponse": { + "type": "structure", + "required": [ + "workgroup" + ], + "members": { + "workgroup": { + "shape": "Workgroup", + "documentation": "The deleted workgroup object.
" + } + } + }, + "Double": { + "type": "double", + "box": true + }, + "Endpoint": { + "type": "structure", + "members": { + "address": { + "shape": "String", + "documentation": "The DNS address of the VPC endpoint.
" + }, + "port": { + "shape": "Integer", + "documentation": "The port that Amazon Redshift Serverless listens on.
" + }, + "vpcEndpoints": { + "shape": "VpcEndpointList", + "documentation": "An array of VpcEndpoint
objects.
The VPC endpoint object.
" + }, + "EndpointAccess": { + "type": "structure", + "members": { + "address": { + "shape": "String", + "documentation": "The DNS address of the endpoint.
" + }, + "endpointArn": { + "shape": "String", + "documentation": "The Amazon Resource Name (ARN) of the VPC endpoint.
" + }, + "endpointCreateTime": { + "shape": "SyntheticTimestamp_date_time", + "documentation": "The time that the endpoint was created.
" + }, + "endpointName": { + "shape": "String", + "documentation": "The name of the VPC endpoint.
" + }, + "endpointStatus": { + "shape": "String", + "documentation": "The status of the VPC endpoint.
" + }, + "port": { + "shape": "Integer", + "documentation": "The port number on which Amazon Redshift Serverless accepts incoming connections.
" + }, + "subnetIds": { + "shape": "SubnetIdList", + "documentation": "The unique identifier of subnets where Amazon Redshift Serverless choose to deploy the VPC endpoint.
" + }, + "vpcEndpoint": { + "shape": "VpcEndpoint", + "documentation": "The connection endpoint for connecting to Amazon Redshift Serverless.
" + }, + "vpcSecurityGroups": { + "shape": "VpcSecurityGroupMembershipList", + "documentation": "The security groups associated with the endpoint.
" + }, + "workgroupName": { + "shape": "String", + "documentation": "The name of the workgroup associated with the endpoint.
" + } + }, + "documentation": "Information about an Amazon Redshift Serverless VPC endpoint.
" + }, + "EndpointAccessList": { + "type": "list", + "member": { + "shape": "EndpointAccess" + } + }, + "GetCredentialsRequest": { + "type": "structure", + "required": [ + "workgroupName" + ], + "members": { + "dbName": { + "shape": "DbName", + "documentation": "The name of the database to get temporary authorization to log on to.
Constraints:
Must be 1 to 64 alphanumeric characters or hyphens.
Must contain only lowercase letters, numbers, underscore, plus sign, period (dot), at symbol (@), or hyphen.
The first character must be a letter.
Must not contain a colon ( : ) or slash ( / ).
Cannot be a reserved word. A list of reserved words can be found in Reserved Words in the Amazon Redshift Database Developer Guide
The number of seconds until the returned temporary password expires. The minimum is 900 seconds, and the maximum is 3600 seconds.
" + }, + "workgroupName": { + "shape": "WorkgroupName", + "documentation": "The name of the workgroup associated with the database.
" + } + } + }, + "GetCredentialsResponse": { + "type": "structure", + "members": { + "dbPassword": { + "shape": "DbPassword", + "documentation": "A temporary password that authorizes the user name returned by DbUser
to log on to the database DbName
.
A database user name that is authorized to log on to the database DbName
using the password DbPassword
. If the specified DbUser
exists in the database, the new user name has the same database privileges as the the user named in DbUser
. By default, the user is added to PUBLIC.
The date and time the password in DbPassword
expires.
The date and time of when the DbUser
and DbPassword
authorization refreshes.
The name of the VPC endpoint to return information for.
" + } + } + }, + "GetEndpointAccessResponse": { + "type": "structure", + "members": { + "endpoint": { + "shape": "EndpointAccess", + "documentation": "The returned VPC endpoint.
" + } + } + }, + "GetNamespaceRequest": { + "type": "structure", + "required": [ + "namespaceName" + ], + "members": { + "namespaceName": { + "shape": "NamespaceName", + "documentation": "The name of the namespace to retrieve information for.
" + } + } + }, + "GetNamespaceResponse": { + "type": "structure", + "required": [ + "namespace" + ], + "members": { + "namespace": { + "shape": "Namespace", + "documentation": "The returned namespace object.
" + } + } + }, + "GetRecoveryPointRequest": { + "type": "structure", + "required": [ + "recoveryPointId" + ], + "members": { + "recoveryPointId": { + "shape": "String", + "documentation": "The unique identifier of the recovery point to return information for.
" + } + } + }, + "GetRecoveryPointResponse": { + "type": "structure", + "members": { + "recoveryPoint": { + "shape": "RecoveryPoint", + "documentation": "The returned recovery point object.
" + } + } + }, + "GetResourcePolicyRequest": { + "type": "structure", + "required": [ + "resourceArn" + ], + "members": { + "resourceArn": { + "shape": "String", + "documentation": "The Amazon Resource Name (ARN) of the resource to return.
" + } + } + }, + "GetResourcePolicyResponse": { + "type": "structure", + "members": { + "resourcePolicy": { + "shape": "ResourcePolicy", + "documentation": "The returned resource policy.
" + } + } + }, + "GetSnapshotRequest": { + "type": "structure", + "members": { + "ownerAccount": { + "shape": "String", + "documentation": "The owner Amazon Web Services account of a snapshot shared with another user.
" + }, + "snapshotArn": { + "shape": "String", + "documentation": "The Amazon Resource Name (ARN) of the snapshot to return.
" + }, + "snapshotName": { + "shape": "String", + "documentation": "The name of the snapshot to return.
" + } + } + }, + "GetSnapshotResponse": { + "type": "structure", + "members": { + "snapshot": { + "shape": "Snapshot", + "documentation": "The returned snapshot object.
" + } + } + }, + "GetUsageLimitRequest": { + "type": "structure", + "required": [ + "usageLimitId" + ], + "members": { + "usageLimitId": { + "shape": "String", + "documentation": "The unique identifier of the usage limit to return information for.
" + } + } + }, + "GetUsageLimitResponse": { + "type": "structure", + "members": { + "usageLimit": { + "shape": "UsageLimit", + "documentation": "The returned usage limit object.
" + } + } + }, + "GetWorkgroupRequest": { + "type": "structure", + "required": [ + "workgroupName" + ], + "members": { + "workgroupName": { + "shape": "WorkgroupName", + "documentation": "The name of the workgroup to return information for.
" + } + } + }, + "GetWorkgroupResponse": { + "type": "structure", + "required": [ + "workgroup" + ], + "members": { + "workgroup": { + "shape": "Workgroup", + "documentation": "The returned workgroup object.
" + } + } + }, + "IamRoleArn": { + "type": "string" + }, + "IamRoleArnList": { + "type": "list", + "member": { + "shape": "IamRoleArn" + } + }, + "Integer": { + "type": "integer", + "box": true + }, + "KmsKeyId": { + "type": "string" + }, + "ListEndpointAccessRequest": { + "type": "structure", + "members": { + "maxResults": { + "shape": "ListEndpointAccessRequestMaxResultsInteger", + "documentation": "An optional parameter that specifies the maximum number of results to return. You can use nextToken
to get the next page of results.
If your initial ListEndpointAccess
operation returns a nextToken
, you can include the returned nextToken
in subsequent ListEndpointAccess
operations, which returns results in the next page.
The unique identifier of the virtual private cloud with access to Amazon Redshift Serverless.
" + }, + "workgroupName": { + "shape": "String", + "documentation": "The name of the workgroup associated with the VPC endpoint to return.
" + } + } + }, + "ListEndpointAccessRequestMaxResultsInteger": { + "type": "integer", + "box": true, + "max": 100, + "min": 1 + }, + "ListEndpointAccessResponse": { + "type": "structure", + "required": [ + "endpoints" + ], + "members": { + "endpoints": { + "shape": "EndpointAccessList", + "documentation": "The returned VPC endpoints.
" + }, + "nextToken": { + "shape": "String", + "documentation": "When nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page.
An optional parameter that specifies the maximum number of results to return. You can use nextToken
to get the next page of results.
If your initial ListNamespaces
operation returns a nextToken
, you can include the returned nextToken
in subsequent ListNamespaces
operations, which returns results in the next page.
The list of returned namespaces.
" + }, + "nextToken": { + "shape": "String", + "documentation": "When nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page.
The time when creation of the recovery point finished.
" + }, + "maxResults": { + "shape": "ListRecoveryPointsRequestMaxResultsInteger", + "documentation": "An optional parameter that specifies the maximum number of results to return. You can use nextToken
to get the next page of results.
The name of the namespace to list recovery points for.
" + }, + "nextToken": { + "shape": "String", + "documentation": "If your initial ListRecoveryPoints
operation returns a nextToken
, you can include the returned nextToken
in subsequent ListRecoveryPoints
operations, which returns results in the next page.
The time when the recovery point's creation was initiated.
" + } + } + }, + "ListRecoveryPointsRequestMaxResultsInteger": { + "type": "integer", + "box": true, + "max": 100, + "min": 1 + }, + "ListRecoveryPointsResponse": { + "type": "structure", + "members": { + "nextToken": { + "shape": "String", + "documentation": "If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page.
The returned recovery point objects.
" + } + } + }, + "ListSnapshotsRequest": { + "type": "structure", + "members": { + "endTime": { + "shape": "Timestamp", + "documentation": "The timestamp showing when the snapshot creation finished.
" + }, + "maxResults": { + "shape": "ListSnapshotsRequestMaxResultsInteger", + "documentation": "An optional parameter that specifies the maximum number of results to return. You can use nextToken
to get the next page of results.
The Amazon Resource Name (ARN) of the namespace from which to list all snapshots.
" + }, + "namespaceName": { + "shape": "String", + "documentation": "The namespace from which to list all snapshots.
" + }, + "nextToken": { + "shape": "String", + "documentation": "If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page.
The owner Amazon Web Services account of the snapshot.
" + }, + "startTime": { + "shape": "Timestamp", + "documentation": "The time when the creation of the snapshot was initiated.
" + } + } + }, + "ListSnapshotsRequestMaxResultsInteger": { + "type": "integer", + "box": true, + "max": 100, + "min": 1 + }, + "ListSnapshotsResponse": { + "type": "structure", + "members": { + "nextToken": { + "shape": "String", + "documentation": "If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page.
All of the returned snapshot objects.
" + } + } + }, + "ListTagsForResourceRequest": { + "type": "structure", + "required": [ + "resourceArn" + ], + "members": { + "resourceArn": { + "shape": "AmazonResourceName", + "documentation": "The Amazon Resource Name (ARN) of the resource to list tags for.
" + } + } + }, + "ListTagsForResourceResponse": { + "type": "structure", + "members": { + "tags": { + "shape": "TagList", + "documentation": "A map of the key-value pairs assigned to the resource.
" + } + } + }, + "ListUsageLimitsRequest": { + "type": "structure", + "members": { + "maxResults": { + "shape": "ListUsageLimitsRequestMaxResultsInteger", + "documentation": "An optional parameter that specifies the maximum number of results to return. You can use nextToken
to get the next page of results. The default is 100.
If your initial ListUsageLimits
operation returns a nextToken
, you can include the returned nextToken
in subsequent ListUsageLimits
operations, which returns results in the next page.
The Amazon Resource Name (ARN) associated with the resource whose usage limits you want to list.
" + }, + "usageType": { + "shape": "UsageLimitUsageType", + "documentation": "The Amazon Redshift Serverless feature whose limits you want to see.
" + } + } + }, + "ListUsageLimitsRequestMaxResultsInteger": { + "type": "integer", + "box": true, + "max": 100, + "min": 1 + }, + "ListUsageLimitsResponse": { + "type": "structure", + "members": { + "nextToken": { + "shape": "PaginationToken", + "documentation": "When nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page.
An array of returned usage limit objects.
" + } + } + }, + "ListWorkgroupsRequest": { + "type": "structure", + "members": { + "maxResults": { + "shape": "ListWorkgroupsRequestMaxResultsInteger", + "documentation": "An optional parameter that specifies the maximum number of results to return. You can use nextToken
to get the next page of results.
If your initial ListWorkgroups operation returns a nextToken
, you can include the returned nextToken
in subsequent ListNamespaces operations, which returns results in the next page.
If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page. To retrieve the next page, make the call again using the returned token.
The returned array of workgroups.
" + } + } + }, + "LogExport": { + "type": "string", + "enum": [ + "useractivitylog", + "userlog", + "connectionlog" + ] + }, + "LogExportList": { + "type": "list", + "member": { + "shape": "LogExport" + }, + "max": 16, + "min": 0 + }, + "Long": { + "type": "long", + "box": true + }, + "Namespace": { + "type": "structure", + "members": { + "adminUsername": { + "shape": "DbUser", + "documentation": "The username of the administrator for the first database created in the namespace.
" + }, + "creationDate": { + "shape": "SyntheticTimestamp_date_time", + "documentation": "The date of when the namespace was created.
" + }, + "dbName": { + "shape": "String", + "documentation": "The name of the first database created in the namespace.
" + }, + "defaultIamRoleArn": { + "shape": "String", + "documentation": "The Amazon Resource Name (ARN) of the IAM role to set as a default in the namespace.
" + }, + "iamRoles": { + "shape": "IamRoleArnList", + "documentation": "A list of IAM roles to associate with the namespace.
" + }, + "kmsKeyId": { + "shape": "String", + "documentation": "The ID of the Amazon Web Services Key Management Service key used to encrypt your data.
" + }, + "logExports": { + "shape": "LogExportList", + "documentation": "The types of logs the namespace can export. Available export types are User log, Connection log, and User activity log.
" + }, + "namespaceArn": { + "shape": "String", + "documentation": "The Amazon Resource Name (ARN) associated with a namespace.
" + }, + "namespaceId": { + "shape": "String", + "documentation": "The unique identifier of a namespace.
" + }, + "namespaceName": { + "shape": "NamespaceName", + "documentation": "The name of the namespace. Must be between 3-64 alphanumeric characters in lowercase, and it cannot be a reserved word. A list of reserved words can be found in Reserved Words in the Amazon Redshift Database Developer Guide.
" + }, + "status": { + "shape": "NamespaceStatus", + "documentation": "The status of the namespace.
" + } + }, + "documentation": "A collection of database objects and users.
" + }, + "NamespaceList": { + "type": "list", + "member": { + "shape": "Namespace" + } + }, + "NamespaceName": { + "type": "string", + "max": 64, + "min": 3, + "pattern": "^[a-z0-9-]+$" + }, + "NamespaceStatus": { + "type": "string", + "enum": [ + "AVAILABLE", + "MODIFYING", + "DELETING" + ] + }, + "NetworkInterface": { + "type": "structure", + "members": { + "availabilityZone": { + "shape": "String", + "documentation": "The availability Zone.
" + }, + "networkInterfaceId": { + "shape": "String", + "documentation": "The unique identifier of the network interface.
" + }, + "privateIpAddress": { + "shape": "String", + "documentation": "The IPv4 address of the network interface within the subnet.
" + }, + "subnetId": { + "shape": "String", + "documentation": "The unique identifier of the subnet.
" + } + }, + "documentation": "Contains information about a network interface in an Amazon Redshift Serverless managed VPC endpoint.
" + }, + "NetworkInterfaceList": { + "type": "list", + "member": { + "shape": "NetworkInterface" + } + }, + "PaginationToken": { + "type": "string", + "max": 1024, + "min": 8 + }, + "ParameterKey": { + "type": "string" + }, + "ParameterValue": { + "type": "string" + }, + "PutResourcePolicyRequest": { + "type": "structure", + "required": [ + "policy", + "resourceArn" + ], + "members": { + "policy": { + "shape": "String", + "documentation": "The policy to create or update. For example, the following policy grants a user authorization to restore a snapshot.
\"{\\\"Version\\\": \\\"2012-10-17\\\", \\\"Statement\\\" : [{ \\\"Sid\\\": \\\"AllowUserRestoreFromSnapshot\\\", \\\"Principal\\\":{\\\"AWS\\\": [\\\"739247239426\\\"]}, \\\"Action\\\": [\\\"redshift-serverless:RestoreFromSnapshot\\\"] , \\\"Effect\\\": \\\"Allow\\\" }]}\"
The Amazon Resource Name (ARN) of the account to create or update a resource policy for.
" + } + } + }, + "PutResourcePolicyResponse": { + "type": "structure", + "members": { + "resourcePolicy": { + "shape": "ResourcePolicy", + "documentation": "The policy that was created or updated.
" + } + } + }, + "RecoveryPoint": { + "type": "structure", + "members": { + "namespaceName": { + "shape": "NamespaceName", + "documentation": "The name of the namespace the recovery point is associated with.
" + }, + "recoveryPointCreateTime": { + "shape": "SyntheticTimestamp_date_time", + "documentation": "The time the recovery point is created.
" + }, + "recoveryPointId": { + "shape": "String", + "documentation": "The unique identifier of the recovery point.
" + }, + "totalSizeInMegaBytes": { + "shape": "Double", + "documentation": "The total size of the data in the recovery point in megabytes.
" + }, + "workgroupName": { + "shape": "WorkgroupName", + "documentation": "The name of the workgroup the recovery point is associated with.
" + } + }, + "documentation": "The automatically created recovery point of a namespace. Recovery points are created every 30 minutes and kept for 24 hours.
" + }, + "RecoveryPointList": { + "type": "list", + "member": { + "shape": "RecoveryPoint" + } + }, + "ResourcePolicy": { + "type": "structure", + "members": { + "policy": { + "shape": "String", + "documentation": "The resource policy.
" + }, + "resourceArn": { + "shape": "String", + "documentation": "The Amazon Resource Name (ARN) of the policy.
" + } + }, + "documentation": "The resource policy object. Currently, you can use policies to share snapshots across Amazon Web Services accounts.
" + }, + "RestoreFromRecoveryPointRequest": { + "type": "structure", + "required": [ + "namespaceName", + "recoveryPointId", + "workgroupName" + ], + "members": { + "namespaceName": { + "shape": "NamespaceName", + "documentation": "The name of the namespace to restore data into.
" + }, + "recoveryPointId": { + "shape": "String", + "documentation": "The unique identifier of the recovery point to restore from.
" + }, + "workgroupName": { + "shape": "WorkgroupName", + "documentation": "The name of the workgroup used to restore data.
" + } + } + }, + "RestoreFromRecoveryPointResponse": { + "type": "structure", + "members": { + "namespace": { + "shape": "Namespace", + "documentation": "The namespace that data was restored into.
" + }, + "recoveryPointId": { + "shape": "String", + "documentation": "The unique identifier of the recovery point used for the restore.
" + } + } + }, + "RestoreFromSnapshotRequest": { + "type": "structure", + "required": [ + "namespaceName", + "workgroupName" + ], + "members": { + "namespaceName": { + "shape": "NamespaceName", + "documentation": "The name of the namespace to restore the snapshot to.
" + }, + "ownerAccount": { + "shape": "String", + "documentation": "The Amazon Web Services account that owns the snapshot.
" + }, + "snapshotArn": { + "shape": "String", + "documentation": "The Amazon Resource Name (ARN) of the snapshot to restore from.
" + }, + "snapshotName": { + "shape": "String", + "documentation": "The name of the snapshot to restore from.
" + }, + "workgroupName": { + "shape": "WorkgroupName", + "documentation": "The name of the workgroup used to restore the snapshot.
" + } + } + }, + "RestoreFromSnapshotResponse": { + "type": "structure", + "members": { + "namespace": { + "shape": "Namespace" + }, + "ownerAccount": { + "shape": "String", + "documentation": "The owner Amazon Web Services; account of the snapshot that was restored.
" + }, + "snapshotName": { + "shape": "String", + "documentation": "The name of the snapshot used to restore the namespace.
" + } + } + }, + "SecurityGroupId": { + "type": "string" + }, + "SecurityGroupIdList": { + "type": "list", + "member": { + "shape": "SecurityGroupId" + } + }, + "Snapshot": { + "type": "structure", + "members": { + "accountsWithProvisionedRestoreAccess": { + "shape": "AccountIdList", + "documentation": "All of the Amazon Web Services accounts that have access to restore a snapshot to a provisioned cluster.
" + }, + "accountsWithRestoreAccess": { + "shape": "AccountIdList", + "documentation": "All of the Amazon Web Services accounts that have access to restore a snapshot to a namespace.
" + }, + "actualIncrementalBackupSizeInMegaBytes": { + "shape": "Double", + "documentation": "The size of the incremental backup in megabytes.
" + }, + "adminUsername": { + "shape": "String", + "documentation": "The username of the database within a snapshot.
" + }, + "backupProgressInMegaBytes": { + "shape": "Double", + "documentation": "The size in megabytes of the data that has been backed up to a snapshot.
" + }, + "currentBackupRateInMegaBytesPerSecond": { + "shape": "Double", + "documentation": "The rate at which data is backed up into a snapshot in megabytes per second.
" + }, + "elapsedTimeInSeconds": { + "shape": "Long", + "documentation": "The amount of time it took to back up data into a snapshot.
" + }, + "estimatedSecondsToCompletion": { + "shape": "Long", + "documentation": "The estimated amount of seconds until the snapshot completes backup.
" + }, + "kmsKeyId": { + "shape": "KmsKeyId", + "documentation": "The unique identifier of the KMS key used to encrypt the snapshot.
" + }, + "namespaceArn": { + "shape": "String", + "documentation": "The Amazon Resource Name (ARN) of the namespace the snapshot was created from.
" + }, + "namespaceName": { + "shape": "String", + "documentation": "The name of the namepsace.
" + }, + "ownerAccount": { + "shape": "String", + "documentation": "The owner Amazon Web Services; account of the snapshot.
" + }, + "snapshotArn": { + "shape": "String", + "documentation": "The Amazon Resource Name (ARN) of the snapshot.
" + }, + "snapshotCreateTime": { + "shape": "SyntheticTimestamp_date_time", + "documentation": "The timestamp of when the snapshot was created.
" + }, + "snapshotName": { + "shape": "String", + "documentation": "The name of the snapshot.
" + }, + "snapshotRemainingDays": { + "shape": "Integer", + "documentation": "The amount of days until the snapshot is deleted.
" + }, + "snapshotRetentionPeriod": { + "shape": "Integer", + "documentation": "The period of time, in days, of how long the snapshot is retained.
" + }, + "snapshotRetentionStartTime": { + "shape": "SyntheticTimestamp_date_time", + "documentation": "The timestamp of when data within the snapshot started getting retained.
" + }, + "status": { + "shape": "SnapshotStatus", + "documentation": "The status of the snapshot.
" + }, + "totalBackupSizeInMegaBytes": { + "shape": "Double", + "documentation": "The total size, in megabytes, of how big the snapshot is.
" + } + }, + "documentation": "A snapshot object that contains databases.
" + }, + "SnapshotList": { + "type": "list", + "member": { + "shape": "Snapshot" + } + }, + "SnapshotStatus": { + "type": "string", + "enum": [ + "AVAILABLE", + "CREATING", + "DELETED", + "CANCELLED", + "FAILED", + "COPYING" + ] + }, + "String": { + "type": "string" + }, + "SubnetId": { + "type": "string" + }, + "SubnetIdList": { + "type": "list", + "member": { + "shape": "SubnetId" + } + }, + "SyntheticTimestamp_date_time": { + "type": "timestamp", + "timestampFormat": "iso8601" + }, + "Tag": { + "type": "structure", + "required": [ + "key", + "value" + ], + "members": { + "key": { + "shape": "TagKey", + "documentation": "The key to use in the tag.
" + }, + "value": { + "shape": "TagValue", + "documentation": "The value of the tag.
" + } + }, + "documentation": "A map of key-value pairs.
" + }, + "TagKey": { + "type": "string", + "max": 128, + "min": 1 + }, + "TagKeyList": { + "type": "list", + "member": { + "shape": "TagKey" + }, + "max": 200, + "min": 0 + }, + "TagList": { + "type": "list", + "member": { + "shape": "Tag" + }, + "max": 200, + "min": 0 + }, + "TagResourceRequest": { + "type": "structure", + "required": [ + "resourceArn", + "tags" + ], + "members": { + "resourceArn": { + "shape": "AmazonResourceName", + "documentation": "The Amazon Resource Name (ARN) of the resource to tag.
" + }, + "tags": { + "shape": "TagList", + "documentation": "The map of the key-value pairs used to tag the resource.
" + } + } + }, + "TagResourceResponse": { + "type": "structure", + "members": {} + }, + "TagValue": { + "type": "string", + "max": 256, + "min": 0 + }, + "Timestamp": { + "type": "timestamp" + }, + "UntagResourceRequest": { + "type": "structure", + "required": [ + "resourceArn", + "tagKeys" + ], + "members": { + "resourceArn": { + "shape": "AmazonResourceName", + "documentation": "The Amazon Resource Name (ARN) of the resource to remove tags from.
" + }, + "tagKeys": { + "shape": "TagKeyList", + "documentation": "The tag or set of tags to remove from the resource.
" + } + } + }, + "UntagResourceResponse": { + "type": "structure", + "members": {} + }, + "UpdateEndpointAccessRequest": { + "type": "structure", + "required": [ + "endpointName" + ], + "members": { + "endpointName": { + "shape": "String", + "documentation": "The name of the VPC endpoint to update.
" + }, + "vpcSecurityGroupIds": { + "shape": "VpcSecurityGroupIdList", + "documentation": "The list of VPC security groups associated with the endpoint after the endpoint is modified.
" + } + } + }, + "UpdateEndpointAccessResponse": { + "type": "structure", + "members": { + "endpoint": { + "shape": "EndpointAccess", + "documentation": "The updated VPC endpoint.
" + } + } + }, + "UpdateNamespaceRequest": { + "type": "structure", + "required": [ + "namespaceName" + ], + "members": { + "adminUserPassword": { + "shape": "DbPassword", + "documentation": "The password of the administrator for the first database created in the namespace.
" + }, + "adminUsername": { + "shape": "DbUser", + "documentation": "The username of the administrator for the first database created in the namespace.
" + }, + "defaultIamRoleArn": { + "shape": "String", + "documentation": "The Amazon Resource Name (ARN) of the IAM role to set as a default in the namespace.
" + }, + "iamRoles": { + "shape": "IamRoleArnList", + "documentation": "A list of IAM roles to associate with the namespace.
" + }, + "kmsKeyId": { + "shape": "String", + "documentation": "The ID of the Amazon Web Services Key Management Service key used to encrypt your data.
" + }, + "logExports": { + "shape": "LogExportList", + "documentation": "The types of logs the namespace can export. The export types are userlog
, connectionlog
, and useractivitylog
.
The name of the namespace.
" + } + } + }, + "UpdateNamespaceResponse": { + "type": "structure", + "required": [ + "namespace" + ], + "members": { + "namespace": { + "shape": "Namespace", + "documentation": "A list of tag instances.
" + } + } + }, + "UpdateSnapshotRequest": { + "type": "structure", + "required": [ + "snapshotName" + ], + "members": { + "retentionPeriod": { + "shape": "Integer", + "documentation": "The new retention period of the snapshot.
" + }, + "snapshotName": { + "shape": "String", + "documentation": "The name of the snapshot.
" + } + } + }, + "UpdateSnapshotResponse": { + "type": "structure", + "members": { + "snapshot": { + "shape": "Snapshot", + "documentation": "The updated snapshot object.
" + } + } + }, + "UpdateUsageLimitRequest": { + "type": "structure", + "required": [ + "usageLimitId" + ], + "members": { + "amount": { + "shape": "Long", + "documentation": "The new limit amount. For more information about this parameter.
" + }, + "breachAction": { + "shape": "UsageLimitBreachAction", + "documentation": "The new action that Amazon Redshift Serverless takes when the limit is reached.
" + }, + "usageLimitId": { + "shape": "String", + "documentation": "The identifier of the usage limit to update.
" + } + } + }, + "UpdateUsageLimitResponse": { + "type": "structure", + "members": { + "usageLimit": { + "shape": "UsageLimit", + "documentation": "The updated usage limit object.
" + } + } + }, + "UpdateWorkgroupRequest": { + "type": "structure", + "required": [ + "workgroupName" + ], + "members": { + "baseCapacity": { + "shape": "Integer", + "documentation": "The new base data warehouse capacity in Redshift Processing Units (RPUs).
" + }, + "configParameters": { + "shape": "ConfigParameterList", + "documentation": "An array of parameters to set for advanced control over a database. The options are datestyle
, enable_user_activity_logging
, query_group
, search_path
, and max_query_execution_time
.
The value that specifies whether to turn on enhanced virtual private cloud (VPC) routing, which forces Amazon Redshift Serverless to route traffic through your VPC.
" + }, + "publiclyAccessible": { + "shape": "Boolean", + "documentation": "A value that specifies whether the workgroup can be accessible from a public network.
" + }, + "securityGroupIds": { + "shape": "SecurityGroupIdList", + "documentation": "An array of security group IDs to associate with the workgroup.
" + }, + "subnetIds": { + "shape": "SubnetIdList", + "documentation": "An array of VPC subnet IDs to associate with the workgroup.
" + }, + "workgroupName": { + "shape": "WorkgroupName", + "documentation": "The name of the workgroup to update.
" + } + } + }, + "UpdateWorkgroupResponse": { + "type": "structure", + "required": [ + "workgroup" + ], + "members": { + "workgroup": { + "shape": "Workgroup", + "documentation": "The updated workgroup object.
" + } + } + }, + "UsageLimit": { + "type": "structure", + "members": { + "amount": { + "shape": "Long", + "documentation": "The limit amount. If time-based, this amount is in RPUs consumed per hour. If data-based, this amount is in terabytes (TB). The value must be a positive number.
" + }, + "breachAction": { + "shape": "UsageLimitBreachAction", + "documentation": "The action that Amazon Redshift Serverless takes when the limit is reached.
" + }, + "period": { + "shape": "UsageLimitPeriod", + "documentation": "The time period that the amount applies to. A weekly period begins on Sunday. The default is monthly.
" + }, + "resourceArn": { + "shape": "String", + "documentation": "The Amazon Resource Name (ARN) that identifies the Amazon Redshift Serverless resource.
" + }, + "usageLimitArn": { + "shape": "String", + "documentation": "The Amazon Resource Name (ARN) of the resource associated with the usage limit.
" + }, + "usageLimitId": { + "shape": "String", + "documentation": "The identifier of the usage limit.
" + }, + "usageType": { + "shape": "UsageLimitUsageType", + "documentation": "The Amazon Redshift Serverless feature to limit.
" + } + }, + "documentation": "The usage limit object.
" + }, + "UsageLimitBreachAction": { + "type": "string", + "enum": [ + "log", + "emit-metric", + "deactivate" + ] + }, + "UsageLimitPeriod": { + "type": "string", + "enum": [ + "daily", + "weekly", + "monthly" + ] + }, + "UsageLimitUsageType": { + "type": "string", + "enum": [ + "serverless-compute", + "cross-region-datasharing" + ] + }, + "UsageLimits": { + "type": "list", + "member": { + "shape": "UsageLimit" + }, + "max": 100, + "min": 1 + }, + "VpcEndpoint": { + "type": "structure", + "members": { + "networkInterfaces": { + "shape": "NetworkInterfaceList", + "documentation": "One or more network interfaces of the endpoint. Also known as an interface endpoint.
" + }, + "vpcEndpointId": { + "shape": "String", + "documentation": "The connection endpoint ID for connecting to Amazon Redshift Serverless.
" + }, + "vpcId": { + "shape": "String", + "documentation": "The VPC identifier that the endpoint is associated with.
" + } + }, + "documentation": "The connection endpoint for connecting to Amazon Redshift Serverless through the proxy.
" + }, + "VpcEndpointList": { + "type": "list", + "member": { + "shape": "VpcEndpoint" + } + }, + "VpcSecurityGroupId": { + "type": "string" + }, + "VpcSecurityGroupIdList": { + "type": "list", + "member": { + "shape": "VpcSecurityGroupId" + } + }, + "VpcSecurityGroupMembership": { + "type": "structure", + "members": { + "status": { + "shape": "String", + "documentation": "The status of the VPC security group.
" + }, + "vpcSecurityGroupId": { + "shape": "VpcSecurityGroupId", + "documentation": "The unique identifier of the VPC security group.
" + } + }, + "documentation": "Describes the members of a VPC security group.
" + }, + "VpcSecurityGroupMembershipList": { + "type": "list", + "member": { + "shape": "VpcSecurityGroupMembership" + } + }, + "Workgroup": { + "type": "structure", + "members": { + "baseCapacity": { + "shape": "Integer", + "documentation": "The base data warehouse capacity of the workgroup in Redshift Processing Units (RPUs).
" + }, + "configParameters": { + "shape": "ConfigParameterList", + "documentation": "An array of parameters to set for finer control over a database. The options are datestyle
, enable_user_activity_logging
, query_group
, search_path
, and max_query_execution_time
.
The creation date of the workgroup.
" + }, + "endpoint": { + "shape": "Endpoint", + "documentation": "The endpoint that is created from the workgroup.
" + }, + "enhancedVpcRouting": { + "shape": "Boolean", + "documentation": "The value that specifies whether to enable enhanced virtual private cloud (VPC) routing, which forces Amazon Redshift Serverless to route traffic through your VPC.
" + }, + "namespaceName": { + "shape": "String", + "documentation": "The namespace the workgroup is associated with.
" + }, + "publiclyAccessible": { + "shape": "Boolean", + "documentation": "A value that specifies whether the workgroup can be accessible from a public network
" + }, + "securityGroupIds": { + "shape": "SecurityGroupIdList", + "documentation": "An array of security group IDs to associate with the workgroup.
" + }, + "status": { + "shape": "WorkgroupStatus", + "documentation": "The status of the workgroup.
" + }, + "subnetIds": { + "shape": "SubnetIdList", + "documentation": "An array of subnet IDs the workgroup is associated with.
" + }, + "workgroupArn": { + "shape": "String", + "documentation": "The Amazon Resource Name (ARN) that links to the workgroup.
" + }, + "workgroupId": { + "shape": "String", + "documentation": "The unique identifier of the workgroup.
" + }, + "workgroupName": { + "shape": "WorkgroupName", + "documentation": "The name of the workgroup.
" + } + }, + "documentation": "The collection of computing resources from which an endpoint is created.
" + }, + "WorkgroupList": { + "type": "list", + "member": { + "shape": "Workgroup" + } + }, + "WorkgroupName": { + "type": "string", + "max": 64, + "min": 3, + "pattern": "^[a-z0-9-]+$" + }, + "WorkgroupStatus": { + "type": "string", + "enum": [ + "CREATING", + "AVAILABLE", + "MODIFYING", + "DELETING" + ] + } + }, + "documentation": "This is prerelease documentation for Amazon Redshift Serverless, which is in preview release. The documentation and the feature are both subject to change. We recommend that you use this feature only in test environments, and not in production environments. For preview terms and conditions, see Beta Service Participation in Amazon Web Services Service Terms.
This is an interface reference for Amazon Redshift Serverless. It contains documentation for one of the programming or command line interfaces you can use to manage Amazon Redshift Serverless.
Amazon Redshift Serverless automatically provisions data warehouse capacity and intelligently scales the underlying resources based on workload demands. Amazon Redshift Serverless adjusts capacity in seconds to deliver consistently high performance and simplified operations for even the most demanding and volatile workloads. Amazon Redshift Serverless lets you focus on using your data to acquire new insights for your business and customers.
To learn more about Amazon Redshift Serverless, see What is Amazon Redshift Serverless.
" +} \ No newline at end of file diff --git a/apis/redshiftserverless-2021-04-21.paginators.json b/apis/redshiftserverless-2021-04-21.paginators.json new file mode 100644 index 0000000000..cf5163d450 --- /dev/null +++ b/apis/redshiftserverless-2021-04-21.paginators.json @@ -0,0 +1,40 @@ +{ + "pagination": { + "ListEndpointAccess": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "endpoints" + }, + "ListNamespaces": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "namespaces" + }, + "ListRecoveryPoints": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "recoveryPoints" + }, + "ListSnapshots": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "snapshots" + }, + "ListUsageLimits": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "usageLimits" + }, + "ListWorkgroups": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "workgroups" + } + } +} diff --git a/apis/secretsmanager-2017-10-17.normal.json b/apis/secretsmanager-2017-10-17.normal.json index 84c8d67aac..1e38817902 100644 --- a/apis/secretsmanager-2017-10-17.normal.json +++ b/apis/secretsmanager-2017-10-17.normal.json @@ -303,7 +303,7 @@ "shape": "InternalServiceError" } ], - "documentation": "Lists the secrets that are stored by Secrets Manager in the Amazon Web Services account, not including secrets that are marked for deletion. To see secrets marked for deletion, use the Secrets Manager console.
To list the versions of a secret, use ListSecretVersionIds.
To get the secret value from SecretString
or SecretBinary
, call GetSecretValue.
For information about finding secrets in the console, see Find secrets in Secrets Manager.
Required permissions: secretsmanager:ListSecrets
. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.
Lists the secrets that are stored by Secrets Manager in the Amazon Web Services account, not including secrets that are marked for deletion. To see secrets marked for deletion, use the Secrets Manager console.
ListSecrets is eventually consistent, however it might not reflect changes from the last five minutes. To get the latest information for a specific secret, use DescribeSecret.
To list the versions of a secret, use ListSecretVersionIds.
To get the secret value from SecretString
or SecretBinary
, call GetSecretValue.
For information about finding secrets in the console, see Find secrets in Secrets Manager.
Required permissions: secretsmanager:ListSecrets
. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.
Creates a new version with a new encrypted secret value and attaches it to the secret. The version can contain a new SecretString
value or a new SecretBinary
value.
We recommend you avoid calling PutSecretValue
at a sustained rate of more than once every 10 minutes. When you update the secret value, Secrets Manager creates a new version of the secret. Secrets Manager removes outdated versions when there are more than 100, but it does not remove versions created less than 24 hours ago. If you call PutSecretValue
more than once every 10 minutes, you create more versions than Secrets Manager removes, and you will reach the quota for secret versions.
You can specify the staging labels to attach to the new version in VersionStages
. If you don't include VersionStages
, then Secrets Manager automatically moves the staging label AWSCURRENT
to this version. If this operation creates the first version for the secret, then Secrets Manager automatically attaches the staging label AWSCURRENT
to it .
If this operation moves the staging label AWSCURRENT
from another version to this version, then Secrets Manager also automatically moves the staging label AWSPREVIOUS
to the version that AWSCURRENT
was removed from.
This operation is idempotent. If a version with a VersionId
with the same value as the ClientRequestToken
parameter already exists, and you specify the same secret data, the operation succeeds but does nothing. However, if the secret data is different, then the operation fails because you can't modify an existing version; you can only create new ones.
Required permissions: secretsmanager:PutSecretValue
. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.
Creates a new version with a new encrypted secret value and attaches it to the secret. The version can contain a new SecretString
value or a new SecretBinary
value.
We recommend you avoid calling PutSecretValue
at a sustained rate of more than once every 10 minutes. When you update the secret value, Secrets Manager creates a new version of the secret. Secrets Manager removes outdated versions when there are more than 100, but it does not remove versions created less than 24 hours ago. If you call PutSecretValue
more than once every 10 minutes, you create more versions than Secrets Manager removes, and you will reach the quota for secret versions.
You can specify the staging labels to attach to the new version in VersionStages
. If you don't include VersionStages
, then Secrets Manager automatically moves the staging label AWSCURRENT
to this version. If this operation creates the first version for the secret, then Secrets Manager automatically attaches the staging label AWSCURRENT
to it .
If this operation moves the staging label AWSCURRENT
from another version to this version, then Secrets Manager also automatically moves the staging label AWSPREVIOUS
to the version that AWSCURRENT
was removed from.
This operation is idempotent. If you call this operation with a ClientRequestToken
that matches an existing version's VersionId, and you specify the same secret data, the operation succeeds but does nothing. However, if the secret data is different, then the operation fails because you can't modify an existing version; you can only create new ones.
Required permissions: secretsmanager:PutSecretValue
. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.
Modifies the details of a secret, including metadata and the secret value. To change the secret value, you can also use PutSecretValue.
To change the rotation configuration of a secret, use RotateSecret instead.
We recommend you avoid calling UpdateSecret
at a sustained rate of more than once every 10 minutes. When you call UpdateSecret
to update the secret value, Secrets Manager creates a new version of the secret. Secrets Manager removes outdated versions when there are more than 100, but it does not remove versions created less than 24 hours ago. If you update the secret value more than once every 10 minutes, you create more versions than Secrets Manager removes, and you will reach the quota for secret versions.
If you include SecretString
or SecretBinary
to create a new secret version, Secrets Manager automatically attaches the staging label AWSCURRENT
to the new version.
If you call this operation with a VersionId
that matches an existing version's ClientRequestToken
, the operation results in an error. You can't modify an existing version, you can only create a new version. To remove a version, remove all staging labels from it. See UpdateSecretVersionStage.
If you don't specify an KMS encryption key, Secrets Manager uses the Amazon Web Services managed key aws/secretsmanager
. If this key doesn't already exist in your account, then Secrets Manager creates it for you automatically. All users and roles in the Amazon Web Services account automatically have access to use aws/secretsmanager
. Creating aws/secretsmanager
can result in a one-time significant delay in returning the result.
If the secret is in a different Amazon Web Services account from the credentials calling the API, then you can't use aws/secretsmanager
to encrypt the secret, and you must create and use a customer managed key.
Required permissions: secretsmanager:UpdateSecret
. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager. If you use a customer managed key, you must also have kms:GenerateDataKey
and kms:Decrypt
permissions on the key. For more information, see Secret encryption and decryption.
Modifies the details of a secret, including metadata and the secret value. To change the secret value, you can also use PutSecretValue.
To change the rotation configuration of a secret, use RotateSecret instead.
We recommend you avoid calling UpdateSecret
at a sustained rate of more than once every 10 minutes. When you call UpdateSecret
to update the secret value, Secrets Manager creates a new version of the secret. Secrets Manager removes outdated versions when there are more than 100, but it does not remove versions created less than 24 hours ago. If you update the secret value more than once every 10 minutes, you create more versions than Secrets Manager removes, and you will reach the quota for secret versions.
If you include SecretString
or SecretBinary
to create a new secret version, Secrets Manager automatically attaches the staging label AWSCURRENT
to the new version.
If you call this operation with a ClientRequestToken
that matches an existing version's VersionId
, the operation results in an error. You can't modify an existing version, you can only create a new version. To remove a version, remove all staging labels from it. See UpdateSecretVersionStage.
If you don't specify an KMS encryption key, Secrets Manager uses the Amazon Web Services managed key aws/secretsmanager
. If this key doesn't already exist in your account, then Secrets Manager creates it for you automatically. All users and roles in the Amazon Web Services account automatically have access to use aws/secretsmanager
. Creating aws/secretsmanager
can result in a one-time significant delay in returning the result.
If the secret is in a different Amazon Web Services account from the credentials calling the API, then you can't use aws/secretsmanager
to encrypt the secret, and you must create and use a customer managed key.
Required permissions: secretsmanager:UpdateSecret
. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager. If you use a customer managed key, you must also have kms:GenerateDataKey
and kms:Decrypt
permissions on the key. For more information, see Secret encryption and decryption.
Provides details about the CNAME record that is added to the DNS database for domain validation.
" }, + "AwsCloudFormationStackDetails": { + "type": "structure", + "members": { + "Capabilities": { + "shape": "NonEmptyStringList", + "documentation": "The capabilities allowed in the stack.
" + }, + "CreationTime": { + "shape": "NonEmptyString", + "documentation": "The time at which the stack was created.
" + }, + "Description": { + "shape": "NonEmptyString", + "documentation": "A user-defined description associated with the stack.
" + }, + "DisableRollback": { + "shape": "Boolean", + "documentation": "Boolean to enable or disable rollback on stack creation failures.
" + }, + "DriftInformation": { + "shape": "AwsCloudFormationStackDriftInformationDetails", + "documentation": "Information about whether a stack's actual configuration differs, or has drifted, from its expected configuration, as defined in the stack template and any values specified as template parameters.
" + }, + "EnableTerminationProtection": { + "shape": "Boolean", + "documentation": "Whether termination protection is enabled for the stack.
" + }, + "LastUpdatedTime": { + "shape": "NonEmptyString", + "documentation": "The time the nested stack was last updated. This field will only be returned if the stack has been updated at least once.
" + }, + "NotificationArns": { + "shape": "NonEmptyStringList", + "documentation": "The Amazon Resource Names (ARNs) of the Amazon SNS topic to which stack-related events are published.
" + }, + "Outputs": { + "shape": "AwsCloudFormationStackOutputsList", + "documentation": "A list of output structures.
" + }, + "RoleArn": { + "shape": "NonEmptyString", + "documentation": "The ARN of an IAM role that's associated with the stack.
" + }, + "StackId": { + "shape": "NonEmptyString", + "documentation": "Unique identifier of the stack.
" + }, + "StackName": { + "shape": "NonEmptyString", + "documentation": "The name associated with the stack.
" + }, + "StackStatus": { + "shape": "NonEmptyString", + "documentation": "Current status of the stack.
" + }, + "StackStatusReason": { + "shape": "NonEmptyString", + "documentation": "Success or failure message associated with the stack status.
" + }, + "TimeoutInMinutes": { + "shape": "Integer", + "documentation": "The length of time, in minutes, that CloudFormation waits for the nested stack to reach the CREATE_COMPLETE
state.
Nests a stack as a resource in a top-level template. Nested stacks are stacks created as resources for another stack.
" + }, + "AwsCloudFormationStackDriftInformationDetails": { + "type": "structure", + "members": { + "StackDriftStatus": { + "shape": "NonEmptyString", + "documentation": "Status of the stack's actual configuration compared to its expected template configuration.
" + } + }, + "documentation": "Provides information about the stack's conformity to its expected template configuration.
" + }, + "AwsCloudFormationStackOutputsDetails": { + "type": "structure", + "members": { + "Description": { + "shape": "NonEmptyString", + "documentation": "A user-defined description associated with the output.
" + }, + "OutputKey": { + "shape": "NonEmptyString", + "documentation": "The key associated with the output.
" + }, + "OutputValue": { + "shape": "NonEmptyString", + "documentation": "The value associated with the output.
" + } + }, + "documentation": "Provides information about the CloudFormation stack output.
" + }, + "AwsCloudFormationStackOutputsList": { + "type": "list", + "member": { + "shape": "AwsCloudFormationStackOutputsDetails" + } + }, "AwsCloudFrontDistributionCacheBehavior": { "type": "structure", "members": { @@ -2924,7 +3024,7 @@ "documentation": "The cache behaviors for the distribution.
" } }, - "documentation": "Provides information about caching for the distribution.
" + "documentation": "Provides information about caching for the CloudFront distribution.
" }, "AwsCloudFrontDistributionCacheBehaviorsItemList": { "type": "list", @@ -2940,7 +3040,7 @@ "documentation": "The protocol that viewers can use to access the files in an origin. You can specify the following options:
allow-all
- Viewers can use HTTP or HTTPS.
redirect-to-https
- CloudFront responds to HTTP requests with an HTTP status code of 301 (Moved Permanently) and the HTTPS URL. The viewer then uses the new URL to resubmit.
https-only
- CloudFront responds to HTTP request with an HTTP status code of 403 (Forbidden).
Contains information about the default cache configuration for the distribution.
" + "documentation": "Contains information about the default cache configuration for the CloudFront distribution.
" }, "AwsCloudFrontDistributionDetails": { "type": "structure", @@ -2994,7 +3094,7 @@ "documentation": "A unique identifier that specifies the WAF web ACL, if any, to associate with this distribution.
" } }, - "documentation": "A distribution configuration.
" + "documentation": "A CloudFront distribution configuration.
" }, "AwsCloudFrontDistributionLogging": { "type": "structure", @@ -3016,7 +3116,37 @@ "documentation": "An optional string that you want CloudFront to use as a prefix to the access log filenames for this distribution.
" } }, - "documentation": "A complex type that controls whether access logs are written for the distribution.
" + "documentation": "A complex type that controls whether access logs are written for the CloudFront distribution.
" + }, + "AwsCloudFrontDistributionOriginCustomOriginConfig": { + "type": "structure", + "members": { + "HttpPort": { + "shape": "Integer", + "documentation": "The HTTP port that CloudFront uses to connect to the origin.
" + }, + "HttpsPort": { + "shape": "Integer", + "documentation": "The HTTPS port that CloudFront uses to connect to the origin.
" + }, + "OriginKeepaliveTimeout": { + "shape": "Integer", + "documentation": "Specifies how long, in seconds, CloudFront persists its connection to the origin.
" + }, + "OriginProtocolPolicy": { + "shape": "NonEmptyString", + "documentation": "Specifies the protocol (HTTP or HTTPS) that CloudFront uses to connect to the origin.
" + }, + "OriginReadTimeout": { + "shape": "Integer", + "documentation": "Specifies how long, in seconds, CloudFront waits for a response from the origin.
" + }, + "OriginSslProtocols": { + "shape": "AwsCloudFrontDistributionOriginSslProtocols", + "documentation": "Specifies the minimum SSL/TLS protocol that CloudFront uses when connecting to your origin over HTTPS.
" + } + }, + "documentation": "A custom origin. A custom origin is any origin that is not an Amazon S3 bucket, with one exception. An Amazon S3 bucket that is configured with static website hosting is a custom origin.
" }, "AwsCloudFrontDistributionOriginGroup": { "type": "structure", @@ -3026,7 +3156,7 @@ "documentation": "Provides the criteria for an origin group to fail over.
" } }, - "documentation": "Information about an origin group for the distribution.
" + "documentation": "Information about an origin group for the CloudFront distribution.
" }, "AwsCloudFrontDistributionOriginGroupFailover": { "type": "structure", @@ -3066,7 +3196,7 @@ "documentation": "The list of origin groups.
" } }, - "documentation": "Provides information about origin groups that are associated with the distribution.
" + "documentation": "Provides information about origin groups that are associated with the CloudFront distribution.
" }, "AwsCloudFrontDistributionOriginGroupsItemList": { "type": "list", @@ -3092,9 +3222,13 @@ "S3OriginConfig": { "shape": "AwsCloudFrontDistributionOriginS3OriginConfig", "documentation": "An origin that is an S3 bucket that is not configured with static website hosting.
" + }, + "CustomOriginConfig": { + "shape": "AwsCloudFrontDistributionOriginCustomOriginConfig", + "documentation": "An origin that is not an Amazon S3 bucket, with one exception. If the Amazon S3 bucket is configured with static website hosting, use this attribute. If the Amazon S3 bucket is not configured with static website hosting, use the S3OriginConfig
type instead.
A complex type that describes the S3 bucket, HTTP server (for example, a web server), AWS Elemental MediaStore, or other server from which CloudFront gets your files.
" + "documentation": "A complex type that describes the Amazon S3 bucket, HTTP server (for example, a web server), AWS Elemental MediaStore, or other server from which CloudFront gets your files.
" }, "AwsCloudFrontDistributionOriginItemList": { "type": "list", @@ -3110,7 +3244,21 @@ "documentation": "The CloudFront origin access identity to associate with the origin.
" } }, - "documentation": "Information about an origin that is an S3 bucket that is not configured with static website hosting.
" + "documentation": "Information about an origin that is an Amazon S3 bucket that is not configured with static website hosting.
" + }, + "AwsCloudFrontDistributionOriginSslProtocols": { + "type": "structure", + "members": { + "Items": { + "shape": "NonEmptyStringList", + "documentation": "A list that contains allowed SSL/TLS protocols for this distribution.
" + }, + "Quantity": { + "shape": "Integer", + "documentation": "The number of SSL/TLS protocols that you want to allow CloudFront to use when establishing an HTTPS connection with this origin.
" + } + }, + "documentation": "A complex type that contains information about the SSL/TLS protocols that CloudFront can use when establishing an HTTPS connection with your origin.
" }, "AwsCloudFrontDistributionOrigins": { "type": "structure", @@ -3120,7 +3268,7 @@ "documentation": "A complex type that contains origins or origin groups for this distribution.
" } }, - "documentation": "A complex type that contains information about origins and origin groups for this distribution.
" + "documentation": "A complex type that contains information about origins and origin groups for this CloudFront distribution.
" }, "AwsCloudFrontDistributionViewerCertificate": { "type": "structure", @@ -3154,7 +3302,7 @@ "documentation": "The viewers that the distribution accepts HTTPS connections from.
" } }, - "documentation": "Provides information about the TLS/SSL configuration that the distribution uses to communicate with viewers.
" + "documentation": "Provides information about the TLS/SSL configuration that the CloudFront distribution uses to communicate with viewers.
" }, "AwsCloudTrailTrailDetails": { "type": "structure", @@ -3222,6 +3370,120 @@ }, "documentation": "Provides details about a CloudTrail trail.
" }, + "AwsCloudWatchAlarmDetails": { + "type": "structure", + "members": { + "ActionsEnabled": { + "shape": "Boolean", + "documentation": "Indicates whether actions should be executed during any changes to the alarm state.
" + }, + "AlarmActions": { + "shape": "NonEmptyStringList", + "documentation": "The list of actions, specified as Amazon Resource Names (ARNs) to execute when this alarm transitions into an ALARM
state from any other state.
The ARN of the alarm.
" + }, + "AlarmConfigurationUpdatedTimestamp": { + "shape": "NonEmptyString", + "documentation": "The time stamp of the last update to the alarm configuration.
" + }, + "AlarmDescription": { + "shape": "NonEmptyString", + "documentation": "The description of the alarm.
" + }, + "AlarmName": { + "shape": "NonEmptyString", + "documentation": "The name of the alarm. If you don't specify a name, CloudFront generates a unique physical ID and uses that ID for the alarm name.
" + }, + "ComparisonOperator": { + "shape": "NonEmptyString", + "documentation": "The arithmetic operation to use when comparing the specified statistic and threshold. The specified statistic value is used as the first operand.
" + }, + "DatapointsToAlarm": { + "shape": "Integer", + "documentation": "The number of datapoints that must be breaching to trigger the alarm.
" + }, + "Dimensions": { + "shape": "AwsCloudWatchAlarmDimensionsList", + "documentation": "The dimensions for the metric associated with the alarm.
" + }, + "EvaluateLowSampleCountPercentile": { + "shape": "NonEmptyString", + "documentation": "Used only for alarms based on percentiles. If ignore
, the alarm state does not change during periods with too few data points to be statistically significant. If evaluate
or this parameter is not used, the alarm is always evaluated and possibly changes state no matter how many data points are available.
The number of periods over which data is compared to the specified threshold.
" + }, + "ExtendedStatistic": { + "shape": "NonEmptyString", + "documentation": "The percentile statistic for the metric associated with the alarm.
" + }, + "InsufficientDataActions": { + "shape": "NonEmptyStringList", + "documentation": "The actions to execute when this alarm transitions to the INSUFFICIENT_DATA
state from any other state. Each action is specified as an ARN.
The name of the metric associated with the alarm. This is required for an alarm based on a metric. For an alarm based on a math expression, you use Metrics
instead and you can't specify MetricName
.
The namespace of the metric associated with the alarm. This is required for an alarm based on a metric. For an alarm based on a math expression, you can't specify Namespace
and you use Metrics
instead.
The actions to execute when this alarm transitions to the OK
state from any other state. Each action is specified as an ARN.
The period, in seconds, over which the statistic is applied. This is required for an alarm based on a metric.
" + }, + "Statistic": { + "shape": "NonEmptyString", + "documentation": "The statistic for the metric associated with the alarm, other than percentile. For percentile statistics, use ExtendedStatistic
.
For an alarm based on a metric, you must specify either Statistic
or ExtendedStatistic
but not both.
For an alarm based on a math expression, you can't specify Statistic
. Instead, you use Metrics
.
The value to compare with the specified statistic.
" + }, + "ThresholdMetricId": { + "shape": "NonEmptyString", + "documentation": "n an alarm based on an anomaly detection model, this is the ID of the ANOMALY_DETECTION_BAND
function used as the threshold for the alarm.
Sets how this alarm is to handle missing data points.
" + }, + "Unit": { + "shape": "NonEmptyString", + "documentation": "The unit of the metric associated with the alarm.
" + } + }, + "documentation": "Specifies an alarm and associates it with the specified metric or metric math expression.
" + }, + "AwsCloudWatchAlarmDimensionsDetails": { + "type": "structure", + "members": { + "Name": { + "shape": "NonEmptyString", + "documentation": "The name of a dimension.
" + }, + "Value": { + "shape": "NonEmptyString", + "documentation": "The value of a dimension.
" + } + }, + "documentation": "Details about the dimensions for the metric associated with the alarm.
" + }, + "AwsCloudWatchAlarmDimensionsList": { + "type": "list", + "member": { + "shape": "AwsCloudWatchAlarmDimensionsDetails" + } + }, "AwsCodeBuildProjectArtifactsDetails": { "type": "structure", "members": { @@ -3964,9 +4226,43 @@ "NetworkInterfaces": { "shape": "AwsEc2InstanceNetworkInterfacesList", "documentation": "The identifiers of the network interfaces for the EC2 instance. The details for each network interface are in a corresponding AwsEc2NetworkInterfacesDetails
object.
The virtualization type of the Amazon Machine Image (AMI) required to launch the instance.
" + }, + "MetadataOptions": { + "shape": "AwsEc2InstanceMetadataOptions", + "documentation": "Details about the metadata options for the Amazon EC2 instance.
" } }, - "documentation": "The details of an EC2 instance.
" + "documentation": "The details of an Amazon EC2 instance.
" + }, + "AwsEc2InstanceMetadataOptions": { + "type": "structure", + "members": { + "HttpEndpoint": { + "shape": "NonEmptyString", + "documentation": "Enables or disables the HTTP metadata endpoint on the instance.
" + }, + "HttpProtocolIpv6": { + "shape": "NonEmptyString", + "documentation": "Enables or disables the IPv6 endpoint for the instance metadata service.
" + }, + "HttpPutResponseHopLimit": { + "shape": "Integer", + "documentation": "The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel.
" + }, + "HttpTokens": { + "shape": "NonEmptyString", + "documentation": "The state of token usage for your instance metadata requests.
" + }, + "InstanceMetadataTags": { + "shape": "NonEmptyString", + "documentation": "Specifies whether to allow access to instance tags from the instance metadata.
" + } + }, + "documentation": "Metadata options that allow you to configure and secure the Amazon EC2 instance.
" }, "AwsEc2InstanceNetworkInterfacesDetails": { "type": "structure", @@ -3976,7 +4272,7 @@ "documentation": "The identifier of the network interface. The details are in a corresponding AwsEc2NetworkInterfacesDetails
object.
Identifies a network interface for the EC2 instance.
" + "documentation": "Identifies a network interface for the Amazon EC2 instance.
" }, "AwsEc2InstanceNetworkInterfacesList": { "type": "list", @@ -4036,7 +4332,7 @@ "documentation": "The set of rules in the network ACL.
" } }, - "documentation": "Contains details about an EC2 network access control list (ACL).
" + "documentation": "Contains details about an Amazon EC2 network access control list (ACL).
" }, "AwsEc2NetworkAclEntry": { "type": "structure", @@ -4063,7 +4359,7 @@ }, "Protocol": { "shape": "NonEmptyString", - "documentation": "The protocol that the rule applies to. To deny or allow access to all protocols, use the value -1.
" + "documentation": "The protocol that the rule applies to. To deny or allow access to all protocols, use the value -1
.
[VPC only] The outbound rules associated with the security group.
" } }, - "documentation": "Details about an EC2 security group.
" + "documentation": "Details about an Amazon EC2 security group.
" }, "AwsEc2SecurityGroupIpPermission": { "type": "structure", "members": { "IpProtocol": { "shape": "NonEmptyString", - "documentation": "The IP protocol name (tcp
, udp
, icmp
, icmpv6
) or number.
[VPC only] Use -1
to specify all protocols.
When authorizing security group rules, specifying -1 or a protocol number other than tcp
, udp
, icmp
, or icmpv6
allows traffic on all ports, regardless of any port range you specify.
For tcp
, udp
, and icmp
, you must specify a port range.
For icmpv6
, the port range is optional. If you omit the port range, traffic for all types and codes is allowed.
The IP protocol name (tcp
, udp
, icmp
, icmpv6
) or number.
[VPC only] Use -1
to specify all protocols.
When authorizing security group rules, specifying -1
or a protocol number other than tcp
, udp
, icmp
, or icmpv6
allows traffic on all ports, regardless of any port range you specify.
For tcp
, udp
, and icmp
, you must specify a port range.
For icmpv6
, the port range is optional. If you omit the port range, traffic for all types and codes is allowed.
The end of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes.
" + "documentation": "The end of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
A value of -1
indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes.
Contains information about a subnet in Amazon EC2.
" }, + "AwsEc2TransitGatewayDetails": { + "type": "structure", + "members": { + "Id": { + "shape": "NonEmptyString", + "documentation": "The ID of the transit gateway.
" + }, + "Description": { + "shape": "NonEmptyString", + "documentation": "The description of the transit gateway.
" + }, + "DefaultRouteTablePropagation": { + "shape": "NonEmptyString", + "documentation": "Turn on or turn off automatic propagation of routes to the default propagation route table.
" + }, + "AutoAcceptSharedAttachments": { + "shape": "NonEmptyString", + "documentation": "Turn on or turn off automatic acceptance of attachment requests.
" + }, + "DefaultRouteTableAssociation": { + "shape": "NonEmptyString", + "documentation": "Turn on or turn off automatic association with the default association route table.
" + }, + "TransitGatewayCidrBlocks": { + "shape": "NonEmptyStringList", + "documentation": "The transit gateway Classless Inter-Domain Routing (CIDR) blocks.
" + }, + "AssociationDefaultRouteTableId": { + "shape": "NonEmptyString", + "documentation": "The ID of the default association route table.
" + }, + "PropagationDefaultRouteTableId": { + "shape": "NonEmptyString", + "documentation": "The ID of the default propagation route table.
" + }, + "VpnEcmpSupport": { + "shape": "NonEmptyString", + "documentation": "Turn on or turn off Equal Cost Multipath Protocol (ECMP) support.
" + }, + "DnsSupport": { + "shape": "NonEmptyString", + "documentation": "Turn on or turn off DNS support.
" + }, + "MulticastSupport": { + "shape": "NonEmptyString", + "documentation": "Indicates whether multicast is supported on the transit gateway.
" + }, + "AmazonSideAsn": { + "shape": "Integer", + "documentation": "A private Autonomous System Number (ASN) for the Amazon side of a BGP session.
" + } + }, + "documentation": "Information about an Amazon Web Services Amazon EC2 Transit Gateway that interconnects virtual private clouds (VPCs) and on-premises networks.
" + }, "AwsEc2VolumeAttachment": { "type": "structure", "members": { @@ -4457,9 +4807,13 @@ "shape": "NonEmptyString", "documentation": "Indicates when the volume was created.
Uses the date-time
format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z
.
The device name for the volume that is attached to the instance.
" + }, "Encrypted": { "shape": "Boolean", - "documentation": "Whether the volume is encrypted.
" + "documentation": "Specifies whether the volume is encrypted.
" }, "Size": { "shape": "Integer", @@ -4480,6 +4834,18 @@ "Attachments": { "shape": "AwsEc2VolumeAttachmentList", "documentation": "The volume attachments.
" + }, + "VolumeId": { + "shape": "NonEmptyString", + "documentation": "The ID of the volume.
" + }, + "VolumeType": { + "shape": "NonEmptyString", + "documentation": "The volume type.
" + }, + "VolumeScanStatus": { + "shape": "NonEmptyString", + "documentation": "Indicates whether the volume was scanned or skipped.
" } }, "documentation": "Details about an EC2 volume.
" @@ -4572,6 +4938,80 @@ "shape": "AwsEc2VpcEndpointServiceServiceTypeDetails" } }, + "AwsEc2VpcPeeringConnectionDetails": { + "type": "structure", + "members": { + "AccepterVpcInfo": { + "shape": "AwsEc2VpcPeeringConnectionVpcInfoDetails", + "documentation": "Information about the accepter VPC.
" + }, + "ExpirationTime": { + "shape": "NonEmptyString", + "documentation": "The time at which an unaccepted VPC peering connection will expire.
" + }, + "RequesterVpcInfo": { + "shape": "AwsEc2VpcPeeringConnectionVpcInfoDetails", + "documentation": "Information about the requester VPC.
" + }, + "Status": { + "shape": "AwsEc2VpcPeeringConnectionStatusDetails", + "documentation": "The status of the VPC peering connection.
" + }, + "VpcPeeringConnectionId": { + "shape": "NonEmptyString", + "documentation": "The ID of the VPC peering connection.
" + } + }, + "documentation": "Provides information about a VPC peering connection between two VPCs: a requester VPC that you own and an accepter VPC with which to create the connection.
" + }, + "AwsEc2VpcPeeringConnectionStatusDetails": { + "type": "structure", + "members": { + "Code": { + "shape": "NonEmptyString", + "documentation": "The status of the VPC peering connection.
" + }, + "Message": { + "shape": "NonEmptyString", + "documentation": "A message that provides more information about the status, if applicable.
" + } + }, + "documentation": "Details about the status of the VPC peering connection.
" + }, + "AwsEc2VpcPeeringConnectionVpcInfoDetails": { + "type": "structure", + "members": { + "CidrBlock": { + "shape": "NonEmptyString", + "documentation": "The IPv4 CIDR block for the VPC.
" + }, + "CidrBlockSet": { + "shape": "VpcInfoCidrBlockSetList", + "documentation": "Information about the IPv4 CIDR blocks for the VPC.
" + }, + "Ipv6CidrBlockSet": { + "shape": "VpcInfoIpv6CidrBlockSetList", + "documentation": "The IPv6 CIDR block for the VPC.
" + }, + "OwnerId": { + "shape": "NonEmptyString", + "documentation": "The ID of the Amazon Web Services account that owns the VPC.
" + }, + "PeeringOptions": { + "shape": "VpcInfoPeeringOptionsDetails", + "documentation": "Information about the VPC peering connection options for the accepter or requester VPC.
" + }, + "Region": { + "shape": "NonEmptyString", + "documentation": "The Amazon Web Services Region in which the VPC is located.
" + }, + "VpcId": { + "shape": "NonEmptyString", + "documentation": "The ID of the VPC.
" + } + }, + "documentation": "Describes a VPC in a VPC peering connection.
" + }, "AwsEc2VpnConnectionDetails": { "type": "structure", "members": { @@ -4953,6 +5393,14 @@ "AwsEcsClusterDetails": { "type": "structure", "members": { + "ClusterArn": { + "shape": "NonEmptyString", + "documentation": "The Amazon Resource Name (ARN) that identifies the cluster.
" + }, + "ActiveServicesCount": { + "shape": "Integer", + "documentation": "The number of services that are running on the cluster in an ACTIVE
state. You can view these services with the Amazon ECS ListServices
API operation.
The short name of one or more capacity providers to associate with the cluster.
" @@ -4968,9 +5416,53 @@ "DefaultCapacityProviderStrategy": { "shape": "AwsEcsClusterDefaultCapacityProviderStrategyList", "documentation": "The default capacity provider strategy for the cluster. The default capacity provider strategy is used when services or tasks are run without a specified launch type or capacity provider strategy.
" + }, + "ClusterName": { + "shape": "NonEmptyString", + "documentation": "A name that you use to identify your cluster.
" + }, + "RegisteredContainerInstancesCount": { + "shape": "Integer", + "documentation": "The number of container instances registered into the cluster. This includes container instances in both ACTIVE
and DRAINING
status.
The number of tasks in the cluster that are in the RUNNING
state.
The status of the cluster.
" } }, - "documentation": "provides details about an ECS cluster.
" + "documentation": "Provides details about an Amazon ECS cluster.
" + }, + "AwsEcsContainerDetails": { + "type": "structure", + "members": { + "Name": { + "shape": "NonEmptyString", + "documentation": "The name of the container.
" + }, + "Image": { + "shape": "NonEmptyString", + "documentation": "The image used for the container.
" + }, + "MountPoints": { + "shape": "AwsMountPointList", + "documentation": "The mount points for data volumes in your container.
" + }, + "Privileged": { + "shape": "Boolean", + "documentation": "When this parameter is true, the container is given elevated privileges on the host container instance (similar to the root user).
" + } + }, + "documentation": "Provides information about an Amazon ECS container.
" + }, + "AwsEcsContainerDetailsList": { + "type": "list", + "member": { + "shape": "AwsEcsContainerDetails" + } }, "AwsEcsServiceCapacityProviderStrategyDetails": { "type": "structure", @@ -5900,7 +6392,7 @@ "documentation": "The data volume definitions for the task.
" } }, - "documentation": "details about a task definition. A task definition describes the container and volume definitions of an Amazon Elastic Container Service task.
" + "documentation": "Details about a task definition. A task definition describes the container and volume definitions of an Amazon Elastic Container Service task.
" }, "AwsEcsTaskDefinitionInferenceAcceleratorsDetails": { "type": "structure", @@ -6084,6 +6576,158 @@ "shape": "AwsEcsTaskDefinitionVolumesDetails" } }, + "AwsEcsTaskDetails": { + "type": "structure", + "members": { + "ClusterArn": { + "shape": "NonEmptyString", + "documentation": "The Amazon Resource Name (ARN) of the cluster that hosts the task.
" + }, + "TaskDefinitionArn": { + "shape": "NonEmptyString", + "documentation": "The ARN of the task definition that creates the task.
" + }, + "Version": { + "shape": "NonEmptyString", + "documentation": "The version counter for the task.
" + }, + "CreatedAt": { + "shape": "NonEmptyString", + "documentation": "The Unix timestamp for the time when the task was created. More specifically, it's for the time when the task entered the PENDING
state.
The Unix timestamp for the time when the task started. More specifically, it's for the time when the task transitioned from the PENDING
state to the RUNNING
state.
The tag specified when a task is started. If an Amazon ECS service started the task, the startedBy
parameter contains the deployment ID of that service.
The name of the task group that's associated with the task.
" + }, + "Volumes": { + "shape": "AwsEcsTaskVolumeDetailsList", + "documentation": "Details about the data volume that is used in a task definition.
" + }, + "Containers": { + "shape": "AwsEcsContainerDetailsList", + "documentation": "The containers that are associated with the task.
" + } + }, + "documentation": "Provides details about a task in a cluster.
" + }, + "AwsEcsTaskVolumeDetails": { + "type": "structure", + "members": { + "Name": { + "shape": "NonEmptyString", + "documentation": "The name of the volume. Up to 255 letters (uppercase and lowercase), numbers, underscores, and hyphens are allowed. This name is referenced in the sourceVolume
parameter of container definition mountPoints
.
This parameter is specified when you use bind mount host volumes. The contents of the host
parameter determine whether your bind mount host volume persists on the host container instance and where it's stored.
Provides information about a data volume that's used in a task definition.
" + }, + "AwsEcsTaskVolumeDetailsList": { + "type": "list", + "member": { + "shape": "AwsEcsTaskVolumeDetails" + } + }, + "AwsEcsTaskVolumeHostDetails": { + "type": "structure", + "members": { + "SourcePath": { + "shape": "NonEmptyString", + "documentation": "When the host
parameter is used, specify a sourcePath
to declare the path on the host container instance that's presented to the container.
Provides details on a container instance bind mount host volume.
" + }, + "AwsEfsAccessPointDetails": { + "type": "structure", + "members": { + "AccessPointId": { + "shape": "NonEmptyString", + "documentation": "The ID of the Amazon EFS access point.
" + }, + "Arn": { + "shape": "NonEmptyString", + "documentation": "The Amazon Resource Name (ARN) of the Amazon EFS access point.
" + }, + "ClientToken": { + "shape": "NonEmptyString", + "documentation": "The opaque string specified in the request to ensure idempotent creation.
" + }, + "FileSystemId": { + "shape": "NonEmptyString", + "documentation": "The ID of the Amazon EFS file system that the access point applies to.
" + }, + "PosixUser": { + "shape": "AwsEfsAccessPointPosixUserDetails", + "documentation": "The full POSIX identity, including the user ID, group ID, and secondary group IDs on the access point, that is used for all file operations by NFS clients using the access point.
" + }, + "RootDirectory": { + "shape": "AwsEfsAccessPointRootDirectoryDetails", + "documentation": "The directory on the Amazon EFS file system that the access point exposes as the root directory to NFS clients using the access point.
" + } + }, + "documentation": "Provides information about an Amazon EFS access point.
" + }, + "AwsEfsAccessPointPosixUserDetails": { + "type": "structure", + "members": { + "Gid": { + "shape": "NonEmptyString", + "documentation": "The POSIX group ID used for all file system operations using this access point.
" + }, + "SecondaryGids": { + "shape": "NonEmptyStringList", + "documentation": "Secondary POSIX group IDs used for all file system operations using this access point.
" + }, + "Uid": { + "shape": "NonEmptyString", + "documentation": "The POSIX user ID used for all file system operations using this access point.
" + } + }, + "documentation": "Provides details for all file system operations using this Amazon EFS access point.
" + }, + "AwsEfsAccessPointRootDirectoryCreationInfoDetails": { + "type": "structure", + "members": { + "OwnerGid": { + "shape": "NonEmptyString", + "documentation": "Specifies the POSIX group ID to apply to the root directory.
" + }, + "OwnerUid": { + "shape": "NonEmptyString", + "documentation": "Specifies the POSIX user ID to apply to the root directory.
" + }, + "Permissions": { + "shape": "NonEmptyString", + "documentation": "Specifies the POSIX permissions to apply to the root directory, in the format of an octal number representing the file's mode bits.
" + } + }, + "documentation": "Provides information about the settings that Amazon EFS uses to create the root directory when a client connects to an access point.
" + }, + "AwsEfsAccessPointRootDirectoryDetails": { + "type": "structure", + "members": { + "CreationInfo": { + "shape": "AwsEfsAccessPointRootDirectoryCreationInfoDetails", + "documentation": "Specifies the POSIX IDs and permissions to apply to the access point's root directory.
" + }, + "Path": { + "shape": "NonEmptyString", + "documentation": "Specifies the path on the Amazon EFS file system to expose as the root directory to NFS clients using the access point to access the EFS file system. A path can have up to four subdirectories. If the specified path does not exist, you are required to provide CreationInfo
.
Provides information about the directory on the Amazon EFS file system that the access point exposes as the root directory to NFS clients using the access point.
" + }, "AwsEksClusterDetails": { "type": "structure", "members": { @@ -6431,7 +7075,7 @@ }, "KmsKeyId": { "shape": "NonEmptyString", - "documentation": "The KMS key ID. Takes the form 1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a.
" + "documentation": "The KMS key ID. Takes the form 1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a
.
Details about the configuration for encryption at rest.
" @@ -7411,6 +8055,46 @@ "shape": "AwsIamUserPolicy" } }, + "AwsKinesisStreamDetails": { + "type": "structure", + "members": { + "Name": { + "shape": "NonEmptyString", + "documentation": "The name of the Kinesis stream. If you don't specify a name, CloudFront generates a unique physical ID and uses that ID for the stream name.
" + }, + "Arn": { + "shape": "NonEmptyString", + "documentation": "The Amazon Resource Name (ARN) of the Kinesis data stream.
" + }, + "StreamEncryption": { + "shape": "AwsKinesisStreamStreamEncryptionDetails", + "documentation": "When specified, enables or updates server-side encryption using an KMS key for a specified stream. Removing this property from your stack template and updating your stack disables encryption.
" + }, + "ShardCount": { + "shape": "Integer", + "documentation": "The number of shards that the stream uses.
" + }, + "RetentionPeriodHours": { + "shape": "Integer", + "documentation": "The number of hours for the data records that are stored in shards to remain accessible.
" + } + }, + "documentation": "Provides information about an Amazon Kinesis data stream.
" + }, + "AwsKinesisStreamStreamEncryptionDetails": { + "type": "structure", + "members": { + "EncryptionType": { + "shape": "NonEmptyString", + "documentation": "The encryption type to use.
" + }, + "KeyId": { + "shape": "NonEmptyString", + "documentation": "The globally unique identifier for the customer-managed KMS key to use for encryption.
" + } + }, + "documentation": "Provides information about stream encryption.
" + }, "AwsKmsKeyDetails": { "type": "structure", "members": { @@ -7440,7 +8124,7 @@ }, "Description": { "shape": "NonEmptyString", - "documentation": "A description of the key.
" + "documentation": "A description of the KMS key.
" }, "KeyRotationStatus": { "shape": "Boolean", @@ -7656,6 +8340,26 @@ "AwsLambdaLayerVersionNumber": { "type": "long" }, + "AwsMountPoint": { + "type": "structure", + "members": { + "SourceVolume": { + "shape": "NonEmptyString", + "documentation": "The name of the volume to mount. Must be a volume name referenced in the name
parameter of task definition volume
.
The path on the container to mount the host volume at.
" + } + }, + "documentation": "Details for a volume mount point that's used in a container definition.
" + }, + "AwsMountPointList": { + "type": "list", + "member": { + "shape": "AwsMountPoint" + } + }, "AwsNetworkFirewallFirewallDetails": { "type": "structure", "members": { @@ -7771,12 +8475,30 @@ "shape": "NonEmptyString", "documentation": "The descriptive name of the rule group.
" }, - "Type": { - "shape": "NonEmptyString", - "documentation": "The type of rule group. A rule group can be stateful or stateless.
" + "Type": { + "shape": "NonEmptyString", + "documentation": "The type of rule group. A rule group can be stateful or stateless.
" + } + }, + "documentation": "Details about an Network Firewall rule group. Rule groups are used to inspect and control network traffic. Stateless rule groups apply to individual packets. Stateful rule groups apply to packets in the context of their traffic flow.
Rule groups are referenced in firewall policies.
" + }, + "AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails": { + "type": "structure", + "members": { + "Enabled": { + "shape": "Boolean", + "documentation": "Enables fine-grained access control.
" + }, + "InternalUserDatabaseEnabled": { + "shape": "Boolean", + "documentation": "Enables the internal user database.
" + }, + "MasterUserOptions": { + "shape": "AwsOpenSearchServiceDomainMasterUserOptionsDetails", + "documentation": "Specifies information about the master user of the domain.
" } }, - "documentation": "Details about an Network Firewall rule group. Rule groups are used to inspect and control network traffic. Stateless rule groups apply to individual packets. Stateful rule groups apply to packets in the context of their traffic flow.
Rule groups are referenced in firewall policies.
" + "documentation": "Provides information about domain access control options.
" }, "AwsOpenSearchServiceDomainClusterConfigDetails": { "type": "structure", @@ -7892,6 +8614,10 @@ "DomainEndpoints": { "shape": "FieldMap", "documentation": "The domain endpoints. Used if the OpenSearch domain resides in a VPC.
This is a map of key-value pairs. The key is always vpc
. The value is the endpoint.
Specifies options for fine-grained access control.
" } }, "documentation": "Information about an Amazon OpenSearch Service domain.
" @@ -7968,6 +8694,24 @@ }, "documentation": "Configures the CloudWatch Logs to publish for the OpenSearch domain.
" }, + "AwsOpenSearchServiceDomainMasterUserOptionsDetails": { + "type": "structure", + "members": { + "MasterUserArn": { + "shape": "NonEmptyString", + "documentation": "The Amazon Resource Name (ARN) for the master user.
" + }, + "MasterUserName": { + "shape": "NonEmptyString", + "documentation": "The username for the master user.
" + }, + "MasterUserPassword": { + "shape": "NonEmptyString", + "documentation": "The password for the master user.
" + } + }, + "documentation": "Specifies information about the master user of the domain.
" + }, "AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetails": { "type": "structure", "members": { @@ -9228,7 +9972,7 @@ }, "ManualSnapshotRetentionPeriod": { "shape": "Integer", - "documentation": "The number of days that manual snapshots are retained in the destination region after they are copied from a source region.
If the value is -1, then the manual snapshot is retained indefinitely.
Valid values: Either -1 or an integer between 1 and 3,653
" + "documentation": "The number of days that manual snapshots are retained in the destination region after they are copied from a source region.
If the value is -1
, then the manual snapshot is retained indefinitely.
Valid values: Either -1
or an integer between 1 and 3,653
The default number of days to retain a manual snapshot.
If the value is -1, the snapshot is retained indefinitely.
This setting doesn't change the retention period of existing snapshots.
Valid values: Either -1 or an integer between 1 and 3,653
" + "documentation": "The default number of days to retain a manual snapshot.
If the value is -1
, the snapshot is retained indefinitely.
This setting doesn't change the retention period of existing snapshots.
Valid values: Either -1
or an integer between 1 and 3,653
The details of process-related information about a finding.
" }, + "Threats": { + "shape": "ThreatList", + "documentation": "Details about the threat detected in a security finding and the file paths that were affected by the threat.
" + }, "ThreatIntelIndicators": { "shape": "ThreatIntelIndicatorList", "documentation": "Threat intelligence details related to a finding.
" @@ -10881,18 +11629,46 @@ }, "Subscription": { "shape": "AwsSnsTopicSubscriptionList", - "documentation": "Subscription is an embedded property that describes the subscription endpoints of an SNS topic.
" + "documentation": "Subscription is an embedded property that describes the subscription endpoints of an Amazon SNS topic.
" }, "TopicName": { "shape": "NonEmptyString", - "documentation": "The name of the topic.
" + "documentation": "The name of the Amazon SNS topic.
" }, "Owner": { "shape": "NonEmptyString", "documentation": "The subscription's owner.
" + }, + "SqsSuccessFeedbackRoleArn": { + "shape": "NonEmptyString", + "documentation": "Indicates successful message delivery status for an Amazon SNS topic that is subscribed to an Amazon SQS endpoint.
" + }, + "SqsFailureFeedbackRoleArn": { + "shape": "NonEmptyString", + "documentation": "Indicates failed message delivery status for an Amazon SNS topic that is subscribed to an Amazon SQS endpoint.
" + }, + "ApplicationSuccessFeedbackRoleArn": { + "shape": "NonEmptyString", + "documentation": "Indicates failed message delivery status for an Amazon SNS topic that is subscribed to a platform application endpoint.
" + }, + "FirehoseSuccessFeedbackRoleArn": { + "shape": "NonEmptyString", + "documentation": "Indicates successful message delivery status for an Amazon SNS topic that is subscribed to an Amazon Kinesis Data Firehose endpoint.
" + }, + "FirehoseFailureFeedbackRoleArn": { + "shape": "NonEmptyString", + "documentation": "Indicates failed message delivery status for an Amazon SNS topic that is subscribed to an Amazon Kinesis Data Firehose endpoint.
" + }, + "HttpSuccessFeedbackRoleArn": { + "shape": "NonEmptyString", + "documentation": "Indicates successful message delivery status for an Amazon SNS topic that is subscribed to an HTTP endpoint.
" + }, + "HttpFailureFeedbackRoleArn": { + "shape": "NonEmptyString", + "documentation": "Indicates failed message delivery status for an Amazon SNS topic that is subscribed to an HTTP endpoint.
" } }, - "documentation": "A wrapper type for the topic's ARN.
" + "documentation": "Provides information about an Amazon SNS topic to which notifications can be published.
" }, "AwsSnsTopicSubscription": { "type": "structure", @@ -10983,186 +11759,476 @@ "shape": "Integer", "documentation": "For the patches that are noncompliant, the number that have a severity of HIGH
.
For the patches that are compliant, the number that have a severity of LOW
.
For the patches that are compliant, the number that have a severity of LOW
.
The type of resource for which the compliance was determined. For AwsSsmPatchCompliance
, ComplianceType
is Patch
.
The identifier of the patch baseline. The patch baseline lists the patches that are approved for installation.
" + }, + "OverallSeverity": { + "shape": "NonEmptyString", + "documentation": "The highest severity for the patches.
" + }, + "NonCompliantMediumCount": { + "shape": "Integer", + "documentation": "For the patches that are noncompliant, the number that have a severity of MEDIUM
.
For the patches that are noncompliant, the number that have a severity of UNSPECIFIED
.
The identifier of the patch group for which compliance was determined. A patch group uses tags to group EC2 instances that should have the same patch compliance.
" + } + }, + "documentation": "Provides the details about the compliance status for a patch.
" + }, + "AwsSsmPatch": { + "type": "structure", + "members": { + "ComplianceSummary": { + "shape": "AwsSsmComplianceSummary", + "documentation": "The compliance status details for the patch.
" + } + }, + "documentation": "Provides details about the compliance for a patch.
" + }, + "AwsSsmPatchComplianceDetails": { + "type": "structure", + "members": { + "Patch": { + "shape": "AwsSsmPatch", + "documentation": "Information about the status of a patch.
" + } + }, + "documentation": "Provides information about the state of a patch on an instance based on the patch baseline that was used to patch the instance.
" + }, + "AwsWafRateBasedRuleDetails": { + "type": "structure", + "members": { + "MetricName": { + "shape": "NonEmptyString", + "documentation": "The name of the metrics for the rate-based rule.
" + }, + "Name": { + "shape": "NonEmptyString", + "documentation": "The name of the rate-based rule.
" + }, + "RateKey": { + "shape": "NonEmptyString", + "documentation": "The field that WAF uses to determine whether requests are likely arriving from single source and are subject to rate monitoring.
" + }, + "RateLimit": { + "shape": "Long", + "documentation": "The maximum number of requests that have an identical value for the field specified in RateKey
that are allowed within a five-minute period. If the number of requests exceeds RateLimit
and the other predicates specified in the rule are met, WAF triggers the action for the rule.
The unique identifier for the rate-based rule.
" + }, + "MatchPredicates": { + "shape": "AwsWafRateBasedRuleMatchPredicateList", + "documentation": "The predicates to include in the rate-based rule.
" + } + }, + "documentation": "Details about a rate-based rule for global resources. A rate-based rule provides settings to indicate when to allow, block, or count a request. Rate-based rules include the number of requests that arrive over a specified period of time.
" + }, + "AwsWafRateBasedRuleMatchPredicate": { + "type": "structure", + "members": { + "DataId": { + "shape": "NonEmptyString", + "documentation": "The unique identifier for the predicate.
" + }, + "Negated": { + "shape": "Boolean", + "documentation": "If set to true
, then the rule actions are performed on requests that match the predicate settings.
If set to false
, then the rule actions are performed on all requests except those that match the predicate settings.
The type of predicate.
" + } + }, + "documentation": "A match predicate. A predicate might look for characteristics such as specific IP addresses, geographic locations, or sizes.
" + }, + "AwsWafRateBasedRuleMatchPredicateList": { + "type": "list", + "member": { + "shape": "AwsWafRateBasedRuleMatchPredicate" + } + }, + "AwsWafRegionalRateBasedRuleDetails": { + "type": "structure", + "members": { + "MetricName": { + "shape": "NonEmptyString", + "documentation": "The name of the metrics for the rate-based rule.
" + }, + "Name": { + "shape": "NonEmptyString", + "documentation": "The name of the rate-based rule.
" + }, + "RateKey": { + "shape": "NonEmptyString", + "documentation": "The field that WAF uses to determine whether requests are likely arriving from single source and are subject to rate monitoring.
" + }, + "RateLimit": { + "shape": "Long", + "documentation": "The maximum number of requests that have an identical value for the field specified in RateKey
that are allowed within a five-minute period. If the number of requests exceeds RateLimit
and the other predicates specified in the rule are met, WAF triggers the action for the rule.
The unique identifier for the rate-based rule.
" + }, + "MatchPredicates": { + "shape": "AwsWafRegionalRateBasedRuleMatchPredicateList", + "documentation": "The predicates to include in the rate-based rule.
" + } + }, + "documentation": "contains details about a rate-based rule for Regional resources. A rate-based rule provides settings to indicate when to allow, block, or count a request. Rate-based rules include the number of requests that arrive over a specified period of time.
" + }, + "AwsWafRegionalRateBasedRuleMatchPredicate": { + "type": "structure", + "members": { + "DataId": { + "shape": "NonEmptyString", + "documentation": "The unique identifier for the predicate.
" + }, + "Negated": { + "shape": "Boolean", + "documentation": "If set to true
, then the rule actions are performed on requests that match the predicate settings.
If set to false
, then the rule actions are performed on all requests except those that match the predicate settings.
The type of predicate.
" + } + }, + "documentation": "Details for a match predicate. A predicate might look for characteristics such as specific IP addresses, geographic locations, or sizes.
" + }, + "AwsWafRegionalRateBasedRuleMatchPredicateList": { + "type": "list", + "member": { + "shape": "AwsWafRegionalRateBasedRuleMatchPredicate" + } + }, + "AwsWafRegionalRuleDetails": { + "type": "structure", + "members": { + "MetricName": { + "shape": "NonEmptyString", + "documentation": "A name for the metrics for the rule.
" + }, + "Name": { + "shape": "NonEmptyString", + "documentation": "A descriptive name for the rule.
" + }, + "PredicateList": { + "shape": "AwsWafRegionalRulePredicateList", + "documentation": "Specifies the ByteMatchSet
, IPSet
, SqlInjectionMatchSet
, XssMatchSet
, RegexMatchSet
, GeoMatchSet
, and SizeConstraintSet
objects that you want to add to a rule and, for each object, indicates whether you want to negate the settings.
The ID of the rule.
" + } + }, + "documentation": "Provides information about an WAF Regional rule. This rule identifies the web requests that you want to allow, block, or count.
" + }, + "AwsWafRegionalRuleGroupDetails": { + "type": "structure", + "members": { + "MetricName": { + "shape": "NonEmptyString", + "documentation": "A name for the metrics for this rule group.
" + }, + "Name": { + "shape": "NonEmptyString", + "documentation": "The descriptive name of the rule group.
" + }, + "RuleGroupId": { + "shape": "NonEmptyString", + "documentation": "The ID of the rule group.
" + }, + "Rules": { + "shape": "AwsWafRegionalRuleGroupRulesList", + "documentation": "Provides information about the rule statements used to identify the web requests that you want to allow, block, or count.
" + } + }, + "documentation": "Provides information about an WAF Regional rule group. The rule group is a collection of rules for inspecting and controlling web requests.
" + }, + "AwsWafRegionalRuleGroupRulesActionDetails": { + "type": "structure", + "members": { + "Type": { + "shape": "NonEmptyString", + "documentation": "Specifies the ByteMatchSet
, IPSet
, SqlInjectionMatchSet
, XssMatchSet
, RegexMatchSet
, GeoMatchSet
, and SizeConstraintSet
objects that you want to add to a rule and, for each object, indicates whether you want to negate the settings.
Describes the action that AWS WAF should take on a web request when it matches the criteria defined in the rule.
" + }, + "AwsWafRegionalRuleGroupRulesDetails": { + "type": "structure", + "members": { + "Action": { + "shape": "AwsWafRegionalRuleGroupRulesActionDetails", + "documentation": "The action that WAF should take on a web request when it matches the criteria defined in the rule.
" + }, + "Priority": { + "shape": "Integer", + "documentation": "If you define more than one rule in a web ACL, WAF evaluates each request against the rules in order based on the value of Priority
.
The ID for a rule.
" + }, + "Type": { + "shape": "NonEmptyString", + "documentation": "The type of rule in the rule group.
" + } + }, + "documentation": "Provides information about the rules attached to a rule group
" + }, + "AwsWafRegionalRuleGroupRulesList": { + "type": "list", + "member": { + "shape": "AwsWafRegionalRuleGroupRulesDetails" + } + }, + "AwsWafRegionalRulePredicateList": { + "type": "list", + "member": { + "shape": "AwsWafRegionalRulePredicateListDetails" + } + }, + "AwsWafRegionalRulePredicateListDetails": { + "type": "structure", + "members": { + "DataId": { + "shape": "NonEmptyString", + "documentation": "A unique identifier for a predicate in a rule, such as ByteMatchSetId
or IPSetId
.
Specifies if you want WAF to allow, block, or count requests based on the settings in the ByteMatchSet
, IPSet
, SqlInjectionMatchSet
, XssMatchSet
, RegexMatchSet
, GeoMatchSet
, or SizeConstraintSet
.
The type of resource for which the compliance was determined. For AwsSsmPatchCompliance
, ComplianceType
is Patch
.
The type of predicate in a rule, such as ByteMatch
or IPSet
.
Provides details about the ByteMatchSet
, IPSet
, SqlInjectionMatchSet
, XssMatchSet
, RegexMatchSet
, GeoMatchSet
, and SizeConstraintSet
objects that you want to add to a rule and, for each object, indicates whether you want to negate the settings.
The identifier of the patch baseline. The patch baseline lists the patches that are approved for installation.
" + "documentation": "The action to perform if none of the rules contained in the web ACL match.
" }, - "OverallSeverity": { + "MetricName": { "shape": "NonEmptyString", - "documentation": "The highest severity for the patches.
" + "documentation": "A name for the metrics for this web ACL.
" }, - "NonCompliantMediumCount": { - "shape": "Integer", - "documentation": "For the patches that are noncompliant, the number that have a severity of MEDIUM
.
A descriptive name for the web ACL.
" }, - "NonCompliantUnspecifiedCount": { - "shape": "Integer", - "documentation": "For the patches that are noncompliant, the number that have a severity of UNSPECIFIED
.
An array that contains the action for each rule in a web ACL, the priority of the rule, and the ID of the rule.
" }, - "PatchGroup": { + "WebAclId": { "shape": "NonEmptyString", - "documentation": "The identifier of the patch group for which compliance was determined. A patch group uses tags to group EC2 instances that should have the same patch compliance.
" + "documentation": "The ID of the web ACL.
" } }, - "documentation": "Provides the details about the compliance status for a patch.
" + "documentation": "Provides information about the web access control list (web ACL). The web ACL contains the rules that identify the requests that you want to allow, block, or count.
" }, - "AwsSsmPatch": { + "AwsWafRegionalWebAclRulesList": { + "type": "list", + "member": { + "shape": "AwsWafRegionalWebAclRulesListDetails" + } + }, + "AwsWafRegionalWebAclRulesListActionDetails": { "type": "structure", "members": { - "ComplianceSummary": { - "shape": "AwsSsmComplianceSummary", - "documentation": "The compliance status details for the patch.
" + "Type": { + "shape": "NonEmptyString", + "documentation": "For actions that are associated with a rule, the action that WAF takes when a web request matches all conditions in a rule.
" } }, - "documentation": "Provides details about the compliance for a patch.
" + "documentation": "The action that WAF takes when a web request matches all conditions in the rule, such as allow, block, or count the request.
" }, - "AwsSsmPatchComplianceDetails": { + "AwsWafRegionalWebAclRulesListDetails": { "type": "structure", "members": { - "Patch": { - "shape": "AwsSsmPatch", - "documentation": "Information about the status of a patch.
" + "Action": { + "shape": "AwsWafRegionalWebAclRulesListActionDetails", + "documentation": "The action that AWS WAF takes when a web request matches all conditions in the rule, such as allow, block, or count the request.
" + }, + "OverrideAction": { + "shape": "AwsWafRegionalWebAclRulesListOverrideActionDetails", + "documentation": "Overrides the rule evaluation result in the rule group.
" + }, + "Priority": { + "shape": "Integer", + "documentation": "The order in which WAF evaluates the rules in a web ACL.
" + }, + "RuleId": { + "shape": "NonEmptyString", + "documentation": "The ID of an WAF Regional rule to associate with a web ACL.
" + }, + "Type": { + "shape": "NonEmptyString", + "documentation": "For actions that are associated with a rule, the action that WAF takes when a web request matches all conditions in a rule.
" } }, - "documentation": "Provides information about the state of a patch on an instance based on the patch baseline that was used to patch the instance.
" + "documentation": "A combination of ByteMatchSet
, IPSet
, and/or SqlInjectionMatchSet
objects that identify the web requests that you want to allow, block, or count.
Overrides the rule evaluation result in the rule group.
" + } + }, + "documentation": "Provides details about the action to use in the place of the action that results from the rule group evaluation.
" + }, + "AwsWafRuleDetails": { "type": "structure", "members": { "MetricName": { "shape": "NonEmptyString", - "documentation": "The name of the metrics for the rate-based rule.
" + "documentation": "The name of the metrics for this rule.
" }, "Name": { "shape": "NonEmptyString", - "documentation": "The name of the rate-based rule.
" - }, - "RateKey": { - "shape": "NonEmptyString", - "documentation": "The field that WAF uses to determine whether requests are likely arriving from single source and are subject to rate monitoring.
" + "documentation": "A descriptive name for the rule.
" }, - "RateLimit": { - "shape": "Long", - "documentation": "The maximum number of requests that have an identical value for the field specified in RateKey
that are allowed within a five-minute period. If the number of requests exceeds RateLimit
and the other predicates specified in the rule are met, WAF triggers the action for the rule.
Specifies the ByteMatchSet
, IPSet
, SqlInjectionMatchSet
, XssMatchSet
, RegexMatchSet
, GeoMatchSet
, and SizeConstraintSet
objects that you want to add to a rule and, for each object, indicates whether you want to negate the settings.
The unique identifier for the rate-based rule.
" - }, - "MatchPredicates": { - "shape": "AwsWafRateBasedRuleMatchPredicateList", - "documentation": "The predicates to include in the rate-based rule.
" + "documentation": "The ID of the WAF rule.
" } }, - "documentation": "Details about a rate-based rule for global resources. A rate-based rule provides settings to indicate when to allow, block, or count a request. Rate-based rules include the number of requests that arrive over a specified period of time.
" + "documentation": "Provides information about a WAF rule. This rule specifies the web requests that you want to allow, block, or count.
" }, - "AwsWafRateBasedRuleMatchPredicate": { + "AwsWafRuleGroupDetails": { "type": "structure", "members": { - "DataId": { + "MetricName": { "shape": "NonEmptyString", - "documentation": "The unique identifier for the predicate.
" + "documentation": "The name of the metrics for this rule group.
" }, - "Negated": { - "shape": "Boolean", - "documentation": "If set to true
, then the rule actions are performed on requests that match the predicate settings.
If set to false
, then the rule actions are performed on all requests except those that match the predicate settings.
The name of the rule group.
" }, - "Type": { + "RuleGroupId": { "shape": "NonEmptyString", - "documentation": "The type of predicate.
" + "documentation": "The ID of the rule group.
" + }, + "Rules": { + "shape": "AwsWafRuleGroupRulesList", + "documentation": "Provides information about the rules attached to the rule group. These rules identify the web requests that you want to allow, block, or count.
" } }, - "documentation": "A match predicate. A predicate might look for characteristics such as specific IP addresses, geographic locations, or sizes.
" - }, - "AwsWafRateBasedRuleMatchPredicateList": { - "type": "list", - "member": { - "shape": "AwsWafRateBasedRuleMatchPredicate" - } + "documentation": "Provides information about an WAF rule group. A rule group is a collection of rules for inspecting and controlling web requests.
" }, - "AwsWafRegionalRateBasedRuleDetails": { + "AwsWafRuleGroupRulesActionDetails": { "type": "structure", "members": { - "MetricName": { - "shape": "NonEmptyString", - "documentation": "The name of the metrics for the rate-based rule.
" - }, - "Name": { - "shape": "NonEmptyString", - "documentation": "The name of the rate-based rule.
" - }, - "RateKey": { + "Type": { "shape": "NonEmptyString", - "documentation": "The field that WAF uses to determine whether requests are likely arriving from single source and are subject to rate monitoring.
" + "documentation": "The action that WAF should take on a web request when it matches the rule's statement.
" + } + }, + "documentation": "Provides information about what action WAF should take on a web request when it matches the criteria defined in the rule.
" + }, + "AwsWafRuleGroupRulesDetails": { + "type": "structure", + "members": { + "Action": { + "shape": "AwsWafRuleGroupRulesActionDetails", + "documentation": "Provides information about what action WAF should take on a web request when it matches the criteria defined in the rule.
" }, - "RateLimit": { - "shape": "Long", - "documentation": "The maximum number of requests that have an identical value for the field specified in RateKey
that are allowed within a five-minute period. If the number of requests exceeds RateLimit
and the other predicates specified in the rule are met, WAF triggers the action for the rule.
If you define more than one rule in a web ACL, WAF evaluates each request against the rules in order based on the value of Priority
.
The unique identifier for the rate-based rule.
" + "documentation": "The rule ID for a rule.
" }, - "MatchPredicates": { - "shape": "AwsWafRegionalRateBasedRuleMatchPredicateList", - "documentation": "The predicates to include in the rate-based rule.
" + "Type": { + "shape": "NonEmptyString", + "documentation": "The type of rule.
" } }, - "documentation": "contains details about a rate-based rule for Regional resources. A rate-based rule provides settings to indicate when to allow, block, or count a request. Rate-based rules include the number of requests that arrive over a specified period of time.
" + "documentation": "Provides information about the rules attached to the rule group. These rules identify the web requests that you want to allow, block, or count.
" }, - "AwsWafRegionalRateBasedRuleMatchPredicate": { + "AwsWafRuleGroupRulesList": { + "type": "list", + "member": { + "shape": "AwsWafRuleGroupRulesDetails" + } + }, + "AwsWafRulePredicateList": { + "type": "list", + "member": { + "shape": "AwsWafRulePredicateListDetails" + } + }, + "AwsWafRulePredicateListDetails": { "type": "structure", "members": { "DataId": { "shape": "NonEmptyString", - "documentation": "The unique identifier for the predicate.
" + "documentation": "A unique identifier for a predicate in a rule, such as ByteMatchSetId
or IPSetId
.
If set to true
, then the rule actions are performed on requests that match the predicate settings.
If set to false
, then the rule actions are performed on all requests except those that match the predicate settings.
Specifies if you want WAF to allow, block, or count requests based on the settings in the ByteMatchSet
, IPSet
, SqlInjectionMatchSet
, XssMatchSet
, RegexMatchSet
, GeoMatchSet
, or SizeConstraintSet
.
The type of predicate.
" + "documentation": "The type of predicate in a rule, such as ByteMatch
or IPSet
.
Details for a match predicate. A predicate might look for characteristics such as specific IP addresses, geographic locations, or sizes.
" - }, - "AwsWafRegionalRateBasedRuleMatchPredicateList": { - "type": "list", - "member": { - "shape": "AwsWafRegionalRateBasedRuleMatchPredicate" - } + "documentation": "Provides details about the ByteMatchSet
, IPSet
, SqlInjectionMatchSet
, XssMatchSet
, RegexMatchSet
, GeoMatchSet
, and SizeConstraintSet
objects that you want to add to a rule and, for each object, indicates whether you want to negate the settings.
A friendly name or description of the WebACL. You can't change the name of a WebACL after you create it.
" + "documentation": "A friendly name or description of the web ACL. You can't change the name of a web ACL after you create it.
" }, "DefaultAction": { "shape": "NonEmptyString", - "documentation": "The action to perform if none of the rules contained in the WebACL match.
" + "documentation": "The action to perform if none of the rules contained in the web ACL match.
" }, "Rules": { "shape": "AwsWafWebAclRuleList", - "documentation": "An array that contains the action for each rule in a WebACL, the priority of the rule, and the ID of the rule.
" + "documentation": "An array that contains the action for each rule in a web ACL, the priority of the rule, and the ID of the rule.
" }, "WebAclId": { "shape": "NonEmptyString", - "documentation": "A unique identifier for a WebACL.
" + "documentation": "A unique identifier for a web ACL.
" } }, - "documentation": "Details about an WAF WebACL.
" + "documentation": "Provides information about an WAF web access control list (web ACL).
" }, "AwsWafWebAclRule": { "type": "structure", @@ -11177,11 +12243,11 @@ }, "OverrideAction": { "shape": "WafOverrideAction", - "documentation": "Use the OverrideAction
to test your RuleGroup.
Any rule in a RuleGroup can potentially block a request. If you set the OverrideAction
to None
, the RuleGroup blocks a request if any individual rule in the RuleGroup matches the request and is configured to block that request.
However, if you first want to test the RuleGroup, set the OverrideAction
to Count
. The RuleGroup then overrides any block action specified by individual rules contained within the group. Instead of blocking matching requests, those requests are counted.
ActivatedRule
|OverrideAction
applies only when updating or adding a RuleGroup to a WebACL. In this case you do not use ActivatedRule
|Action
. For all other update requests, ActivatedRule
|Action
is used instead of ActivatedRule
|OverrideAction
.
Use the OverrideAction
to test your RuleGroup
.
Any rule in a RuleGroup
can potentially block a request. If you set the OverrideAction
to None
, the RuleGroup
blocks a request if any individual rule in the RuleGroup
matches the request and is configured to block that request.
However, if you first want to test the RuleGroup
, set the OverrideAction
to Count
. The RuleGroup
then overrides any block action specified by individual rules contained within the group. Instead of blocking matching requests, those requests are counted.
ActivatedRule
|OverrideAction
applies only when updating or adding a RuleGroup
to a web ACL. In this case you do not use ActivatedRule
Action
. For all other update requests, ActivatedRule
Action
is used instead of ActivatedRule
OverrideAction
.
Specifies the order in which the rules in a WebACL are evaluated. Rules with a lower value for Priority
are evaluated before rules with a higher value. The value must be a unique integer. If you add multiple rules to a WebACL, the values do not need to be consecutive.
Specifies the order in which the rules in a web ACL are evaluated. Rules with a lower value for Priority
are evaluated before rules with a higher value. The value must be a unique integer. If you add multiple rules to a web ACL, the values do not need to be consecutive.
The rule type.
Valid values: REGULAR
| RATE_BASED
| GROUP
The default is REGULAR
.
Details for a rule in an WAF WebACL.
" + "documentation": "Details for a rule in an WAF web ACL.
" }, "AwsWafWebAclRuleList": { "type": "list", @@ -11555,21 +12621,33 @@ "ContainerDetails": { "type": "structure", "members": { + "ContainerRuntime": { + "shape": "NonEmptyString", + "documentation": "The runtime of the container.
" + }, "Name": { "shape": "NonEmptyString", "documentation": "The name of the container related to a finding.
" }, "ImageId": { "shape": "NonEmptyString", - "documentation": "The identifier of the image related to a finding.
" + "documentation": "The identifier of the container image related to a finding.
" }, "ImageName": { "shape": "NonEmptyString", - "documentation": "The name of the image related to a finding.
" + "documentation": "The name of the container image related to a finding.
" }, "LaunchedAt": { "shape": "NonEmptyString", "documentation": "Indicates when the container started.
Uses the date-time
format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z
.
Provides information about the mounting of a volume in a container.
" + }, + "Privileged": { + "shape": "Boolean", + "documentation": "When this parameter is true
, the container is given elevated privileges on the host container instance (similar to the root user).
Container details related to a finding.
" @@ -12339,6 +13417,34 @@ "shape": "NonEmptyString" } }, + "FilePathList": { + "type": "list", + "member": { + "shape": "FilePaths" + } + }, + "FilePaths": { + "type": "structure", + "members": { + "FilePath": { + "shape": "NonEmptyString", + "documentation": "Path to the infected or suspicious file on the resource it was detected on.
" + }, + "FileName": { + "shape": "NonEmptyString", + "documentation": "The name of the infected or suspicious file corresponding to the hash.
" + }, + "ResourceId": { + "shape": "NonEmptyString", + "documentation": "The Amazon Resource Name (ARN) of the resource on which the threat was detected.
" + }, + "Hash": { + "shape": "NonEmptyString", + "documentation": "The hash value for the infected or suspicious file.
" + } + }, + "documentation": "Provides information about the file paths that were affected by the threat.
" + }, "FindingAggregator": { "type": "structure", "members": { @@ -12720,11 +13826,11 @@ "members": { "Code": { "shape": "Integer", - "documentation": "The ICMP code for which to deny or allow access. To deny or allow all codes, use the value -1.
" + "documentation": "The ICMP code for which to deny or allow access. To deny or allow all codes, use the value -1
.
The ICMP type for which to deny or allow access. To deny or allow all types, use the value -1.
" + "documentation": "The ICMP type for which to deny or allow access. To deny or allow all types, use the value -1
.
An Internet Control Message Protocol (ICMP) type and code.
" @@ -14006,11 +15112,11 @@ }, "AwsEc2Volume": { "shape": "AwsEc2VolumeDetails", - "documentation": "Details for an EC2 volume.
" + "documentation": "Details for an Amazon EC2 volume.
" }, "AwsEc2Vpc": { "shape": "AwsEc2VpcDetails", - "documentation": "Details for an EC2 VPC.
" + "documentation": "Details for an Amazon EC2 VPC.
" }, "AwsEc2Eip": { "shape": "AwsEc2EipDetails", @@ -14138,7 +15244,7 @@ }, "AwsWafWebAcl": { "shape": "AwsWafWebAclDetails", - "documentation": "Details for an WAF WebACL.
" + "documentation": "Details for an WAF web ACL.
" }, "AwsRdsDbSnapshot": { "shape": "AwsRdsDbSnapshotDetails", @@ -14154,7 +15260,11 @@ }, "AwsEcsCluster": { "shape": "AwsEcsClusterDetails", - "documentation": "Details about an ECS cluster.
" + "documentation": "Details about an Amazon ECS cluster.
" + }, + "AwsEcsContainer": { + "shape": "AwsEcsContainerDetails", + "documentation": "Provides information about a Docker container that's part of a task.
" }, "AwsEcsTaskDefinition": { "shape": "AwsEcsTaskDefinitionDetails", @@ -14182,7 +15292,7 @@ }, "AwsEc2VpnConnection": { "shape": "AwsEc2VpnConnectionDetails", - "documentation": "Details about an EC2 VPN connection.
" + "documentation": "Details about an Amazon EC2 VPN connection.
" }, "AwsEcrContainerImage": { "shape": "AwsEcrContainerImageDetails", @@ -14231,6 +15341,54 @@ "AwsRdsDbSecurityGroup": { "shape": "AwsRdsDbSecurityGroupDetails", "documentation": "Details about an Amazon RDS DB security group.
" + }, + "AwsKinesisStream": { + "shape": "AwsKinesisStreamDetails", + "documentation": "Details about an Amazon Kinesis data stream.
" + }, + "AwsEc2TransitGateway": { + "shape": "AwsEc2TransitGatewayDetails", + "documentation": "Details about an Amazon EC2 transit gateway that interconnects your virtual private clouds (VPC) and on-premises networks.
" + }, + "AwsEfsAccessPoint": { + "shape": "AwsEfsAccessPointDetails", + "documentation": "Details about an Amazon EFS access point. An access point is an application-specific view into an EFS file system that applies an operating system user and group, and a file system path, to any file system request made through the access point.
" + }, + "AwsCloudFormationStack": { + "shape": "AwsCloudFormationStackDetails", + "documentation": "Details about an CloudFormation stack. A stack is a collection of Amazon Web Services resources that you can manage as a single unit.
" + }, + "AwsCloudWatchAlarm": { + "shape": "AwsCloudWatchAlarmDetails", + "documentation": "Details about an Amazon CloudWatch alarm. An alarm allows you to monitor and receive alerts about your Amazon Web Services resources and applications across multiple Regions.
" + }, + "AwsEc2VpcPeeringConnection": { + "shape": "AwsEc2VpcPeeringConnectionDetails", + "documentation": "Details about an Amazon EC2 VPC peering connection. A VPC peering connection is a networking connection between two VPCs that enables you to route traffic between them privately.
" + }, + "AwsWafRegionalRuleGroup": { + "shape": "AwsWafRegionalRuleGroupDetails", + "documentation": "Details about an WAF rule group for Regional resources.
" + }, + "AwsWafRegionalRule": { + "shape": "AwsWafRegionalRuleDetails", + "documentation": "Details about an WAF rule for Regional resources.
" + }, + "AwsWafRegionalWebAcl": { + "shape": "AwsWafRegionalWebAclDetails", + "documentation": "Details about an WAF web access control list (web ACL) for Regional resources.
" + }, + "AwsWafRule": { + "shape": "AwsWafRuleDetails", + "documentation": "Details about an WAF rule for global resources.
" + }, + "AwsWafRuleGroup": { + "shape": "AwsWafRuleGroupDetails", + "documentation": "Details about an WAF rule group for global resources.
" + }, + "AwsEcsTask": { + "shape": "AwsEcsTaskDetails", + "documentation": "Details about a task in a cluster.
" } }, "documentation": "Additional details about a resource related to a finding.
To provide the details, use the object that corresponds to the resource type. For example, if the resource type is AwsEc2Instance
, then you use the AwsEc2Instance
object to provide the details.
If the type-specific object does not contain all of the fields you want to populate, then you use the Other
object to populate those additional fields.
You also use the Other
object to populate the details when the selected type does not have a corresponding object.
The name of the threat.
" + }, + "Severity": { + "shape": "NonEmptyString", + "documentation": "The severity of the threat.
" + }, + "ItemCount": { + "shape": "Integer", + "documentation": "This total number of items in which the threat has been detected.
" + }, + "FilePaths": { + "shape": "FilePathList", + "documentation": "Provides information about the file paths that were affected by the threat.
" + } + }, + "documentation": "Provides information about the threat detected in a security finding and the file paths that were affected by the threat.
" + }, "ThreatIntelIndicator": { "type": "structure", "members": { @@ -15207,6 +16387,12 @@ "URL" ] }, + "ThreatList": { + "type": "list", + "member": { + "shape": "Threat" + } + }, "Timestamp": { "type": "timestamp", "timestampFormat": "iso8601" @@ -15432,6 +16618,76 @@ "BENIGN_POSITIVE" ] }, + "VolumeMount": { + "type": "structure", + "members": { + "Name": { + "shape": "NonEmptyString", + "documentation": "The name of the volume.
" + }, + "MountPath": { + "shape": "NonEmptyString", + "documentation": "The path in the container at which the volume should be mounted.
" + } + }, + "documentation": "Describes the mounting of a volume in a container.
" + }, + "VolumeMountList": { + "type": "list", + "member": { + "shape": "VolumeMount" + } + }, + "VpcInfoCidrBlockSetDetails": { + "type": "structure", + "members": { + "CidrBlock": { + "shape": "NonEmptyString", + "documentation": "The IPv4 CIDR block for the VPC.
" + } + }, + "documentation": "Provides details about the IPv4 CIDR blocks for the VPC.
" + }, + "VpcInfoCidrBlockSetList": { + "type": "list", + "member": { + "shape": "VpcInfoCidrBlockSetDetails" + } + }, + "VpcInfoIpv6CidrBlockSetDetails": { + "type": "structure", + "members": { + "Ipv6CidrBlock": { + "shape": "NonEmptyString", + "documentation": "The IPv6 CIDR block for the VPC.
" + } + }, + "documentation": "Provides details about the IPv6 CIDR blocks for the VPC.
" + }, + "VpcInfoIpv6CidrBlockSetList": { + "type": "list", + "member": { + "shape": "VpcInfoIpv6CidrBlockSetDetails" + } + }, + "VpcInfoPeeringOptionsDetails": { + "type": "structure", + "members": { + "AllowDnsResolutionFromRemoteVpc": { + "shape": "Boolean", + "documentation": "Indicates whether a local VPC can resolve public DNS hostnames to private IP addresses when queried from instances in a peer VPC.
" + }, + "AllowEgressFromLocalClassicLinkToRemoteVpc": { + "shape": "Boolean", + "documentation": "Indicates whether a local ClassicLink connection can communicate with the peer VPC over the VPC peering connection.
" + }, + "AllowEgressFromLocalVpcToRemoteClassicLink": { + "shape": "Boolean", + "documentation": "Indicates whether a local VPC can communicate with a ClassicLink connection in the peer VPC over the VPC peering connection.
" + } + }, + "documentation": "Provides information about the VPC peering connection options for the accepter or requester VPC.
" + }, "Vulnerability": { "type": "structure", "required": [ @@ -15505,7 +16761,7 @@ "members": { "Type": { "shape": "NonEmptyString", - "documentation": "Specifies how you want WAF to respond to requests that match the settings in a rule.
Valid settings include the following:
ALLOW
- WAF allows requests
BLOCK
- WAF blocks requests
COUNT
- WAF increments a counter of the requests that match all of the conditions in the rule. WAF then continues to inspect the web request based on the remaining rules in the web ACL. You can't specify COUNT
for the default action for a WebACL.
Specifies how you want WAF to respond to requests that match the settings in a rule.
Valid settings include the following:
ALLOW
- WAF allows requests
BLOCK
- WAF blocks requests
COUNT
- WAF increments a counter of the requests that match all of the conditions in the rule. WAF then continues to inspect the web request based on the remaining rules in the web ACL. You can't specify COUNT
for the default action for a web ACL.
Details about the action that CloudFront or WAF takes when a web request matches the conditions in the rule.
" diff --git a/clients/all.d.ts b/clients/all.d.ts index a6d8050672..e1bef68de0 100644 --- a/clients/all.d.ts +++ b/clients/all.d.ts @@ -306,3 +306,4 @@ export import Ivschat = require('./ivschat'); export import ChimeSDKMediaPipelines = require('./chimesdkmediapipelines'); export import EMRServerless = require('./emrserverless'); export import M2 = require('./m2'); +export import RedshiftServerless = require('./redshiftserverless'); diff --git a/clients/all.js b/clients/all.js index aeabc8927b..e2601b4c16 100644 --- a/clients/all.js +++ b/clients/all.js @@ -307,5 +307,6 @@ module.exports = { Ivschat: require('./ivschat'), ChimeSDKMediaPipelines: require('./chimesdkmediapipelines'), EMRServerless: require('./emrserverless'), - M2: require('./m2') + M2: require('./m2'), + RedshiftServerless: require('./redshiftserverless') }; \ No newline at end of file diff --git a/clients/redshiftdata.d.ts b/clients/redshiftdata.d.ts index 3ab3bf3b33..e432c39563 100644 --- a/clients/redshiftdata.d.ts +++ b/clients/redshiftdata.d.ts @@ -12,11 +12,11 @@ declare class RedshiftData extends Service { constructor(options?: RedshiftData.Types.ClientConfiguration) config: Config & RedshiftData.Types.ClientConfiguration; /** - * Runs one or more SQL statements, which can be data manipulation language (DML) or data definition language (DDL). Depending on the authorization method, use one of the following combinations of request parameters: Secrets Manager - when connecting to a cluster, specify the Amazon Resource Name (ARN) of the secret, the database name, and the cluster identifier that matches the cluster in the secret. When connecting to a serverless endpoint, specify the Amazon Resource Name (ARN) of the secret and the database name. Temporary credentials - when connecting to a cluster, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials operation is required. When connecting to a serverless endpoint, specify the database name. + * Runs one or more SQL statements, which can be data manipulation language (DML) or data definition language (DDL). Depending on the authorization method, use one of the following combinations of request parameters: Secrets Manager - when connecting to a cluster, specify the Amazon Resource Name (ARN) of the secret, the database name, and the cluster identifier that matches the cluster in the secret. When connecting to a serverless workgroup, specify the Amazon Resource Name (ARN) of the secret and the database name. Temporary credentials - when connecting to a cluster, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials operation is required. When connecting to a serverless workgroup, specify the workgroup name and database name. Also, permission to call the redshift-serverless:GetCredentials operation is required. */ batchExecuteStatement(params: RedshiftData.Types.BatchExecuteStatementInput, callback?: (err: AWSError, data: RedshiftData.Types.BatchExecuteStatementOutput) => void): Request>1,l=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=a?0:s-1,y=a?1:-1,b=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(n=isNaN(t)?1:0,o=m):(o=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-o))<1&&(o--,u*=2),t+=o+c>=1?l/u:l*Math.pow(2,1-c),t*u>=2&&(o++,u/=2),o+c>=m?(n=0,o=m):o+c>=1?(n=(t*u-1)*Math.pow(2,i),o+=c):(n=t*Math.pow(2,c-1)*Math.pow(2,i),o=0));i>=8;e[r+d]=255&n,d+=y,n/=256,i-=8);for(o=o<0;e[r+d]=255&o,d+=y,o/=256,p-=8);e[r+d-y]|=128*b}},{}],430:[function(e,t,r){var a={}.toString;t.exports=Array.isArray||function(e){return"[object Array]"==a.call(e)}},{}],431:[function(e,t,r){!function(e){"use strict";function t(e){return null!==e&&"[object Array]"===Object.prototype.toString.call(e)}function r(e){return null!==e&&"[object Object]"===Object.prototype.toString.call(e)}function a(e,i){if(e===i)return!0;if(Object.prototype.toString.call(e)!==Object.prototype.toString.call(i))return!1;if(!0===t(e)){if(e.length!==i.length)return!1;for(var s=0;s =0?this.expression(e):"Lbracket"===t?(this._match("Lbracket"),this._parseMultiselectList()):"Lbrace"===t?(this._match("Lbrace"),this._parseMultiselectHash()):void 0},_parseProjectionRHS:function(e){var t;if(P[this._lookahead(0)]<10)t={type:"Identity"};else if("Lbracket"===this._lookahead(0))t=this.expression(e);else if("Filter"===this._lookahead(0))t=this.expression(e);else{if("Dot"!==this._lookahead(0)){var r=this._lookaheadToken(0),a=new Error("Sytanx error, unexpected token: "+r.value+"("+r.type+")");throw a.name="ParserError",a}this._match("Dot"),t=this._parseDotRHS(e)}return t},_parseMultiselectList:function(){for(var e=[];"Rbracket"!==this._lookahead(0);){var t=this.expression(0);if(e.push(t),"Comma"===this._lookahead(0)&&(this._match("Comma"),"Rbracket"===this._lookahead(0)))throw new Error("Unexpected token Rbracket")}return this._match("Rbracket"),{type:"MultiSelectList",children:e}},_parseMultiselectHash:function(){for(var e,t,r,a,i=[],s=["UnquotedIdentifier","QuotedIdentifier"];;){if(e=this._lookaheadToken(0),s.indexOf(e.type)<0)throw new Error("Expecting an identifier token, got: "+e.type);if(t=e.value,this._advance(),this._match("Colon"),r=this.expression(0),a={type:"KeyValuePair",name:t,value:r},i.push(a),"Comma"===this._lookahead(0))this._match("Comma");else if("Rbrace"===this._lookahead(0)){this._match("Rbrace");break}}return{type:"MultiSelectHash",children:i}}},c.prototype={search:function(e,t){return this.visit(e,t)},visit:function(e,o){var n,u,p,m,c,l,d,y,b;switch(e.type){case"Field":return null!==o&&r(o)?(l=o[e.name],void 0===l?null:l):null;case"Subexpression":for(p=this.visit(e.children[0],o),b=1;b G((f-r)/g)&&i("overflow"),r+=(p-t)*g,t=p,u=0;u =0?(c=b.substr(0,S),l=b.substr(S+1)):(c=b,l=""),d=decodeURIComponent(c),y=decodeURIComponent(l),a(o,d)?i(o[d])?o[d].push(y):o[d]=[o[d],y]:o[d]=y}return o};var i=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)}},{}],435:[function(e,t,r){"use strict";function a(e,t){if(e.map)return e.map(t);for(var r=[],a=0;a=55296&&t<=56319&&i65535&&(e-=65536,t+=w(e>>>10&1023|55296),e=56320|1023&e),t+=w(e)}).join("")}function p(e){return e-48<10?e-22:e-65<26?e-65:e-97<26?e-97:T}function m(e,t){return e+22+75*(e<26)-((0!=t)<<5)}function c(e,t,r){var a=0;for(e=r?G(e/R):e>>1,e+=G(e/t);e>L*k>>1;a+=T)e=G(e/L);return G(a+(L+1)*e/(e+A))}function l(e){var t,r,a,s,o,n,m,l,d,y,b=[],S=e.length,g=0,h=v,N=D;for(r=e.lastIndexOf(P),r<0&&(r=0),a=0;a=S&&i("invalid-input"),l=p(e.charCodeAt(s++)),(l>=T||l>G((f-g)/n))&&i("overflow"),g+=l*n,d=m<=N?C:m>=N+k?k:m-N,!(l=t&&bf&&i("overflow"),b==t){for(l=r,d=T;y=d<=o?C:d>=o+k?k:d-o,!(l>5]>>>t%32&255,a=parseInt(o.charAt(r>>>4&15)+o.charAt(15&r),16),i.push(a);return i}function s(e,t){e[t>>5]|=128<0){t=new n.XML.Parser;var c=t.parse(a.toString(),s);u.update(e.data,c)}}var n=e("../core"),u=e("../util"),p=e("./rest");t.exports={buildRequest:i,extractError:s,extractData:o}},{"../core":342,"../util":418,"./rest":379}],382:[function(e,t,r){function a(){}function i(e){return e.isQueryName||"ec2"!==e.api.protocol?e.name:e.name[0].toUpperCase()+e.name.substr(1)}function s(e,t,r,a){p.each(r.members,function(r,s){var o=t[r];if(null!==o&&void 0!==o){var n=i(s);n=e?e+"."+n:n,u(n,o,s,a)}})}function o(e,t,r,a){var i=1;p.each(t,function(t,s){var o=r.flattened?".":".entry.",n=o+i+++".",p=n+(r.key.name||"key"),m=n+(r.value.name||"value");u(e+p,t,r.key,a),u(e+m,s,r.value,a)})}function n(e,t,r,a){var s=r.member||{};if(0===t.length)return void a.call(this,e,null);p.arrayEach(t,function(t,o){var n="."+(o+1);if("ec2"===r.api.protocol)n+="";else if(r.flattened){if(s.name){var p=e.split(".");p.pop(),p.push(i(s)),e=p.join(".")}}else n="."+(s.name?s.name:"member")+n;u(e+n,t,s,a)})}function u(e,t,r,a){null!==t&&void 0!==t&&("structure"===r.type?s(e,t,r,a):"list"===r.type?n(e,t,r,a):"map"===r.type?o(e,t,r,a):a(e,r.toWireFormat(t).toString()))}var p=e("../util");a.prototype.serialize=function(e,t,r){s("",e,t,r)},t.exports=a},{"../util":418}],383:[function(e,t,r){var a=e("../core"),i=null,s={signatureVersion:"v4",signingName:"rds-db",operations:{}},o={region:"string",hostname:"string",port:"number",username:"string"};a.RDS.Signer=a.util.inherit({constructor:function(e){this.options=e||{}},convertUrlToAuthToken:function(e){if(0===e.indexOf("https://"))return e.substring("https://".length)},getAuthToken:function(e,t){"function"==typeof e&&void 0===t&&(t=e,e={});var r=this,o="function"==typeof t;e=a.util.merge(this.options,e);var n=this.validateAuthTokenOptions(e);if(!0!==n){if(o)return t(n,null);throw n}var u={region:e.region,endpoint:new a.Endpoint(e.hostname+":"+e.port),paramValidation:!1,signatureVersion:"v4"};e.credentials&&(u.credentials=e.credentials),i=new a.Service(u),i.api=s;var p=i.makeRequest();if(this.modifyRequestForAuthToken(p,e),!o){var m=p.presign(900);return this.convertUrlToAuthToken(m)}p.presign(900,function(e,a){a&&(a=r.convertUrlToAuthToken(a)),t(e,a)})},modifyRequestForAuthToken:function(e,t){e.on("build",e.buildAsGet),e.httpRequest.body=a.util.queryParamsToString({Action:"connect",DBUser:t.username})},validateAuthTokenOptions:function(e){var t="";e=e||{};for(var r in o)Object.prototype.hasOwnProperty.call(o,r)&&typeof e[r]!==o[r]&&(t+="option '"+r+"' should have been type '"+o[r]+"', was '"+typeof e[r]+"'.\n");return!t.length||a.util.error(new Error,{code:"InvalidParameter",message:t})}})},{"../core":342}],384:[function(e,t,r){t.exports={now:function(){return"undefined"!=typeof performance&&"function"==typeof performance.now?performance.now():Date.now()}}},{}],385:[function(e,t,r){function a(e){return"string"==typeof e&&(e.startsWith("fips-")||e.endsWith("-fips"))}function i(e){return"string"==typeof e&&["aws-global","aws-us-gov-global"].includes(e)}function s(e){return["fips-aws-global","aws-fips","aws-global"].includes(e)?"us-east-1":["fips-aws-us-gov-global","aws-us-gov-global"].includes(e)?"us-gov-west-1":e.replace(/fips-(dkr-|prod-)?|-fips/,"")}t.exports={isFipsRegion:a,isGlobalRegion:i,getRealRegion:s}},{}],386:[function(e,t,r){function a(e){if(!e)return null;var t=e.split("-");return t.length<3?null:t.slice(0,t.length-2).join("-")+"-*"}function i(e){var t=e.config.region,r=a(t),i=e.api.endpointPrefix;return[[t,i],[r,i],[t,"*"],[r,"*"],["*",i],["*","*"]].map(function(e){return e[0]&&e[1]?e.join("/"):null})}function s(e,t){u.each(t,function(t,r){"globalEndpoint"!==t&&(void 0!==e.config[t]&&null!==e.config[t]||(e.config[t]=r))})}function o(e){for(var t=i(e),r=e.config.useFipsEndpoint,a=e.config.useDualstackEndpoint,o=0;o>>8*(a?i:1-i)}function B(e,t,r,a){t<0&&(t=4294967295+t+1);for(var i=0,s=Math.min(e.length-r,4);i>>8*(a?i:3-i)&255}function U(e,t,r,a,i,s){if(r+a>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function _(e,t,r,a,i){return i||U(e,t,r,4,3.4028234663852886e38,-3.4028234663852886e38),X.write(e,t,r,a,23,4),r+4}function F(e,t,r,a,i){return i||U(e,t,r,8,1.7976931348623157e308,-1.7976931348623157e308),X.write(e,t,r,a,52,8),r+8}function O(e){if(e=V(e).replace(ee,""),e.length<2)return"";for(;e.length%4!=0;)e+="=";return e}function V(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}function z(e){return e<16?"0"+e.toString(16):e.toString(16)}function K(e,t){t=t||1/0;for(var r,a=e.length,i=null,s=[],o=0;o55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&s.push(239,191,189);continue}if(o+1===a){(t-=3)>-1&&s.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&s.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&s.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;s.push(r)}else if(r<2048){if((t-=2)<0)break;s.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;s.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;s.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return s}function j(e){for(var t=[],r=0;r