diff --git a/.changes/2.1466.0.json b/.changes/2.1466.0.json new file mode 100644 index 0000000000..aadc2d6923 --- /dev/null +++ b/.changes/2.1466.0.json @@ -0,0 +1,22 @@ +[ + { + "type": "feature", + "category": "CognitoIdentityServiceProvider", + "description": "The UserPoolType Status field is no longer used." + }, + { + "type": "feature", + "category": "Firehose", + "description": "Features : Adding support for new data ingestion source to Kinesis Firehose - AWS Managed Services Kafka." + }, + { + "type": "feature", + "category": "Iot", + "description": "Added support for IoT Rules Engine Kafka Action Headers" + }, + { + "type": "feature", + "category": "Textract", + "description": "This release adds new feature - Layout to Analyze Document API which can automatically extract layout elements such as titles, paragraphs, headers, section headers, lists, page numbers, footers, table areas, key-value areas and figure areas and order the elements as a human would read." + } +] \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 2d636cb4fc..6c5eeb26bd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,7 +1,13 @@ # Changelog for AWS SDK for JavaScript - + +## 2.1466.0 +* feature: CognitoIdentityServiceProvider: The UserPoolType Status field is no longer used. +* feature: Firehose: Features : Adding support for new data ingestion source to Kinesis Firehose - AWS Managed Services Kafka. +* feature: Iot: Added support for IoT Rules Engine Kafka Action Headers +* feature: Textract: This release adds new feature - Layout to Analyze Document API which can automatically extract layout elements such as titles, paragraphs, headers, section headers, lists, page numbers, footers, table areas, key-value areas and figure areas and order the elements as a human would read. + ## 2.1465.0 * feature: AppIntegrations: The Amazon AppIntegrations service adds a set of APIs (in preview) to manage third party applications to be used in Amazon Connect agent workspace. * feature: AppRunner: This release allows an App Runner customer to specify a custom source directory to run the build & start command. This change allows App Runner to support monorepo based repositories diff --git a/README.md b/README.md index 2d489ff4e0..4a05e93c0e 100644 --- a/README.md +++ b/README.md @@ -71,7 +71,7 @@ require('aws-sdk/lib/maintenance_mode_message').suppress = true; 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/cognito-idp-2016-04-18.examples.json b/apis/cognito-idp-2016-04-18.examples.json index b97bf83357..9041ff8746 100644 --- a/apis/cognito-idp-2016-04-18.examples.json +++ b/apis/cognito-idp-2016-04-18.examples.json @@ -695,83 +695,6 @@ } ], "ListUsers": [ - { - "input": { - "AttributesToGet": [ - "email", - "sub" - ], - "Filter": "\"email\"^=\"testuser\"", - "Limit": 3, - "PaginationToken": "abcd1234EXAMPLE", - "UserPoolId": "us-east-1_EXAMPLE" - }, - "output": { - "PaginationToken": "efgh5678EXAMPLE", - "Users": [ - { - "Attributes": [ - { - "Name": "sub", - "Value": "eaad0219-2117-439f-8d46-4db20e59268f" - }, - { - "Name": "email", - "Value": "testuser@example.com" - } - ], - "Enabled": true, - "UserCreateDate": 1682955829.578, - "UserLastModifiedDate": 1689030181.63, - "UserStatus": "CONFIRMED", - "Username": "testuser" - }, - { - "Attributes": [ - { - "Name": "sub", - "Value": "3b994cfd-0b07-4581-be46-3c82f9a70c90" - }, - { - "Name": "email", - "Value": "testuser2@example.com" - } - ], - "Enabled": true, - "UserCreateDate": 1684427979.201, - "UserLastModifiedDate": 1684427979.201, - "UserStatus": "UNCONFIRMED", - "Username": "testuser2" - }, - { - "Attributes": [ - { - "Name": "sub", - "Value": "5929e0d1-4c34-42d1-9b79-a5ecacfe66f7" - }, - { - "Name": "email", - "Value": "testuser3@example.com" - } - ], - "Enabled": true, - "UserCreateDate": 1684427823.641, - "UserLastModifiedDate": 1684427823.641, - "UserStatus": "UNCONFIRMED", - "Username": "testuser3@example.com" - } - ] - }, - "comments": { - "input": { - }, - "output": { - } - }, - "description": "This request submits a value for all possible parameters for ListUsers. By iterating the PaginationToken, you can page through and collect all users in a user pool.", - "id": "a-listusers-request-for-the-next-3-users-whose-email-address-starts-with-testuser-1689977648246", - "title": "A ListUsers request for the next 3 users whose email address starts with \"testuser.\"" - }, { "input": { "AttributesToGet": [ diff --git a/apis/cognito-idp-2016-04-18.min.json b/apis/cognito-idp-2016-04-18.min.json index 9e42a9573b..6e4c58abfe 100644 --- a/apis/cognito-idp-2016-04-18.min.json +++ b/apis/cognito-idp-2016-04-18.min.json @@ -2073,7 +2073,10 @@ "LambdaConfig": { "shape": "S4z" }, - "Status": {}, + "Status": { + "deprecated": true, + "deprecatedMessage": "This property is no longer available." + }, "LastModifiedDate": { "type": "timestamp" }, @@ -3512,7 +3515,10 @@ "LambdaConfig": { "shape": "S4z" }, - "Status": {}, + "Status": { + "deprecated": true, + "deprecatedMessage": "This property is no longer available." + }, "LastModifiedDate": { "type": "timestamp" }, diff --git a/apis/cognito-idp-2016-04-18.normal.json b/apis/cognito-idp-2016-04-18.normal.json index 8241d0e076..c6abd80469 100644 --- a/apis/cognito-idp-2016-04-18.normal.json +++ b/apis/cognito-idp-2016-04-18.normal.json @@ -4291,7 +4291,7 @@ }, "Username": { "shape": "UsernameType", - "documentation": "
The username for the user. Must be unique within the user pool. Must be a UTF-8 string between 1 and 128 characters. After the user is created, the username can't be changed.
" + "documentation": "The value that you want to set as the username sign-in attribute. The following conditions apply to the username parameter.
The username can't be a duplicate of another username in the same user pool.
You can't change the value of a username after you create it.
You can only provide a value if usernames are a valid sign-in attribute for your user pool. If your user pool only supports phone numbers or email addresses as sign-in attributes, Amazon Cognito automatically generates a username value. For more information, see Customizing sign-in attributes.
The user pool status in a user pool description.
" + "documentation": "The user pool status in a user pool description.
", + "deprecated": true, + "deprecatedMessage": "This property is no longer available." }, "LastModifiedDate": { "shape": "DateType", @@ -10109,7 +10111,9 @@ }, "Status": { "shape": "StatusType", - "documentation": "The status of a user pool.
" + "documentation": "The status of a user pool.
", + "deprecated": true, + "deprecatedMessage": "This property is no longer available." }, "LastModifiedDate": { "shape": "DateType", diff --git a/apis/firehose-2015-08-04.min.json b/apis/firehose-2015-08-04.min.json index d366fa8dbf..e14064c688 100644 --- a/apis/firehose-2015-08-04.min.json +++ b/apis/firehose-2015-08-04.min.json @@ -288,6 +288,21 @@ "shape": "S2e" } } + }, + "MSKSourceConfiguration": { + "type": "structure", + "required": [ + "MSKClusterARN", + "TopicName", + "AuthenticationConfiguration" + ], + "members": { + "MSKClusterARN": {}, + "TopicName": {}, + "AuthenticationConfiguration": { + "shape": "S40" + } + } } } }, @@ -352,7 +367,7 @@ "DeliveryStreamARN": {}, "DeliveryStreamStatus": {}, "FailureDescription": { - "shape": "S47" + "shape": "S4c" }, "DeliveryStreamEncryptionConfiguration": { "type": "structure", @@ -361,7 +376,7 @@ "KeyType": {}, "Status": {}, "FailureDescription": { - "shape": "S47" + "shape": "S4c" } } }, @@ -385,6 +400,19 @@ "type": "timestamp" } } + }, + "MSKSourceDescription": { + "type": "structure", + "members": { + "MSKClusterARN": {}, + "TopicName": {}, + "AuthenticationConfiguration": { + "shape": "S40" + }, + "DeliveryStartTimestamp": { + "type": "timestamp" + } + } } } }, @@ -398,7 +426,7 @@ "members": { "DestinationId": {}, "S3DestinationDescription": { - "shape": "S4i" + "shape": "S4o" }, "ExtendedS3DestinationDescription": { "type": "structure", @@ -429,7 +457,7 @@ }, "S3BackupMode": {}, "S3BackupDescription": { - "shape": "S4i" + "shape": "S4o" }, "DataFormatConversionConfiguration": { "shape": "Sz" @@ -461,14 +489,14 @@ "shape": "S1z" }, "S3DestinationDescription": { - "shape": "S4i" + "shape": "S4o" }, "ProcessingConfiguration": { "shape": "Sq" }, "S3BackupMode": {}, "S3BackupDescription": { - "shape": "S4i" + "shape": "S4o" }, "CloudWatchLoggingOptions": { "shape": "Sl" @@ -492,7 +520,7 @@ }, "S3BackupMode": {}, "S3DestinationDescription": { - "shape": "S4i" + "shape": "S4o" }, "ProcessingConfiguration": { "shape": "Sq" @@ -501,7 +529,7 @@ "shape": "Sl" }, "VpcConfigurationDescription": { - "shape": "S4m" + "shape": "S4s" }, "DocumentIdOptions": { "shape": "S2h" @@ -525,7 +553,7 @@ }, "S3BackupMode": {}, "S3DestinationDescription": { - "shape": "S4i" + "shape": "S4o" }, "ProcessingConfiguration": { "shape": "Sq" @@ -534,7 +562,7 @@ "shape": "Sl" }, "VpcConfigurationDescription": { - "shape": "S4m" + "shape": "S4s" }, "DocumentIdOptions": { "shape": "S2h" @@ -555,7 +583,7 @@ }, "S3BackupMode": {}, "S3DestinationDescription": { - "shape": "S4i" + "shape": "S4o" }, "ProcessingConfiguration": { "shape": "Sq" @@ -595,7 +623,7 @@ }, "S3BackupMode": {}, "S3DestinationDescription": { - "shape": "S4i" + "shape": "S4o" } } }, @@ -613,7 +641,7 @@ }, "S3BackupMode": {}, "S3DestinationDescription": { - "shape": "S4i" + "shape": "S4o" }, "ProcessingConfiguration": { "shape": "Sq" @@ -622,7 +650,7 @@ "shape": "Sl" }, "VpcConfigurationDescription": { - "shape": "S4m" + "shape": "S4s" } } } @@ -708,7 +736,7 @@ "members": { "DeliveryStreamName": {}, "Record": { - "shape": "S51" + "shape": "S57" } } }, @@ -737,7 +765,7 @@ "Records": { "type": "list", "member": { - "shape": "S51" + "shape": "S57" } } } @@ -854,7 +882,7 @@ "CurrentDeliveryStreamVersionId": {}, "DestinationId": {}, "S3DestinationUpdate": { - "shape": "S5m", + "shape": "S5s", "deprecated": true }, "ExtendedS3DestinationUpdate": { @@ -879,7 +907,7 @@ }, "S3BackupMode": {}, "S3BackupUpdate": { - "shape": "S5m" + "shape": "S5s" }, "DataFormatConversionConfiguration": { "shape": "Sz" @@ -907,14 +935,14 @@ "shape": "S1z" }, "S3Update": { - "shape": "S5m" + "shape": "S5s" }, "ProcessingConfiguration": { "shape": "Sq" }, "S3BackupMode": {}, "S3BackupUpdate": { - "shape": "S5m" + "shape": "S5s" }, "CloudWatchLoggingOptions": { "shape": "Sl" @@ -937,7 +965,7 @@ "shape": "S2b" }, "S3Update": { - "shape": "S5m" + "shape": "S5s" }, "ProcessingConfiguration": { "shape": "Sq" @@ -966,7 +994,7 @@ "shape": "S2s" }, "S3Update": { - "shape": "S5m" + "shape": "S5s" }, "ProcessingConfiguration": { "shape": "Sq" @@ -993,7 +1021,7 @@ }, "S3BackupMode": {}, "S3Update": { - "shape": "S5m" + "shape": "S5s" }, "ProcessingConfiguration": { "shape": "Sq" @@ -1027,7 +1055,7 @@ }, "S3BackupMode": {}, "S3Update": { - "shape": "S5m" + "shape": "S5s" } } }, @@ -1044,7 +1072,7 @@ "shape": "S3u" }, "S3Update": { - "shape": "S5m" + "shape": "S5s" }, "ProcessingConfiguration": { "shape": "Sq" @@ -1504,7 +1532,18 @@ } } }, - "S47": { + "S40": { + "type": "structure", + "required": [ + "RoleARN", + "Connectivity" + ], + "members": { + "RoleARN": {}, + "Connectivity": {} + } + }, + "S4c": { "type": "structure", "required": [ "Type", @@ -1515,7 +1554,7 @@ "Details": {} } }, - "S4i": { + "S4o": { "type": "structure", "required": [ "RoleARN", @@ -1541,7 +1580,7 @@ } } }, - "S4m": { + "S4s": { "type": "structure", "required": [ "SubnetIds", @@ -1560,7 +1599,7 @@ "VpcId": {} } }, - "S51": { + "S57": { "type": "structure", "required": [ "Data" @@ -1571,7 +1610,7 @@ } } }, - "S5m": { + "S5s": { "type": "structure", "members": { "RoleARN": {}, diff --git a/apis/firehose-2015-08-04.normal.json b/apis/firehose-2015-08-04.normal.json index 1ea5d9af5a..d5ce6e7556 100644 --- a/apis/firehose-2015-08-04.normal.json +++ b/apis/firehose-2015-08-04.normal.json @@ -147,7 +147,7 @@ "shape": "ServiceUnavailableException" } ], - "documentation": "Writes a single data record into an Amazon Kinesis Data Firehose delivery stream. To write multiple data records into a delivery stream, use PutRecordBatch. Applications using these operations are referred to as producers.
By default, each delivery stream can take in up to 2,000 transactions per second, 5,000 records per second, or 5 MB per second. If you use PutRecord and PutRecordBatch, the limits are an aggregate across these two operations for each delivery stream. For more information about limits and how to request an increase, see Amazon Kinesis Data Firehose Limits.
You must specify the name of the delivery stream and the data record when using PutRecord. The data record consists of a data blob that can be up to 1,000 KiB in size, and any kind of data. For example, it can be a segment from a log file, geographic location data, website clickstream data, and so on.
Kinesis Data Firehose buffers records before delivering them to the destination. To disambiguate the data blobs at the destination, a common solution is to use delimiters in the data, such as a newline (\\n
) or some other character unique within the data. This allows the consumer application to parse individual data items when reading the data from the destination.
The PutRecord
operation returns a RecordId
, which is a unique string assigned to each record. Producer applications can use this ID for purposes such as auditability and investigation.
If the PutRecord
operation throws a ServiceUnavailableException
, back off and retry. If the exception persists, it is possible that the throughput limits have been exceeded for the delivery stream.
Data records sent to Kinesis Data Firehose are stored for 24 hours from the time they are added to a delivery stream as it tries to send the records to the destination. If the destination is unreachable for more than 24 hours, the data is no longer available.
Don't concatenate two or more base64 strings to form the data fields of your records. Instead, concatenate the raw data, then perform base64 encoding.
Writes a single data record into an Amazon Kinesis Data Firehose delivery stream. To write multiple data records into a delivery stream, use PutRecordBatch. Applications using these operations are referred to as producers.
By default, each delivery stream can take in up to 2,000 transactions per second, 5,000 records per second, or 5 MB per second. If you use PutRecord and PutRecordBatch, the limits are an aggregate across these two operations for each delivery stream. For more information about limits and how to request an increase, see Amazon Kinesis Data Firehose Limits.
Kinesis Data Firehose accumulates and publishes a particular metric for a customer account in one minute intervals. It is possible that the bursts of incoming bytes/records ingested to a delivery stream last only for a few seconds. Due to this, the actual spikes in the traffic might not be fully visible in the customer's 1 minute CloudWatch metrics.
You must specify the name of the delivery stream and the data record when using PutRecord. The data record consists of a data blob that can be up to 1,000 KiB in size, and any kind of data. For example, it can be a segment from a log file, geographic location data, website clickstream data, and so on.
Kinesis Data Firehose buffers records before delivering them to the destination. To disambiguate the data blobs at the destination, a common solution is to use delimiters in the data, such as a newline (\\n
) or some other character unique within the data. This allows the consumer application to parse individual data items when reading the data from the destination.
The PutRecord
operation returns a RecordId
, which is a unique string assigned to each record. Producer applications can use this ID for purposes such as auditability and investigation.
If the PutRecord
operation throws a ServiceUnavailableException
, the API is automatically reinvoked (retried) 3 times. If the exception persists, it is possible that the throughput limits have been exceeded for the delivery stream.
Re-invoking the Put API operations (for example, PutRecord and PutRecordBatch) can result in data duplicates. For larger data assets, allow for a longer time out before retrying Put API operations.
Data records sent to Kinesis Data Firehose are stored for 24 hours from the time they are added to a delivery stream as it tries to send the records to the destination. If the destination is unreachable for more than 24 hours, the data is no longer available.
Don't concatenate two or more base64 strings to form the data fields of your records. Instead, concatenate the raw data, then perform base64 encoding.
Writes multiple data records into a delivery stream in a single call, which can achieve higher throughput per producer than when writing single records. To write single data records into a delivery stream, use PutRecord. Applications using these operations are referred to as producers.
For information about service quota, see Amazon Kinesis Data Firehose Quota.
Each PutRecordBatch request supports up to 500 records. Each record in the request can be as large as 1,000 KB (before base64 encoding), up to a limit of 4 MB for the entire request. These limits cannot be changed.
You must specify the name of the delivery stream and the data record when using PutRecord. The data record consists of a data blob that can be up to 1,000 KB in size, and any kind of data. For example, it could be a segment from a log file, geographic location data, website clickstream data, and so on.
Kinesis Data Firehose buffers records before delivering them to the destination. To disambiguate the data blobs at the destination, a common solution is to use delimiters in the data, such as a newline (\\n
) or some other character unique within the data. This allows the consumer application to parse individual data items when reading the data from the destination.
The PutRecordBatch response includes a count of failed records, FailedPutCount
, and an array of responses, RequestResponses
. Even if the PutRecordBatch call succeeds, the value of FailedPutCount
may be greater than 0, indicating that there are records for which the operation didn't succeed. Each entry in the RequestResponses
array provides additional information about the processed record. It directly correlates with a record in the request array using the same ordering, from the top to the bottom. The response array always includes the same number of records as the request array. RequestResponses
includes both successfully and unsuccessfully processed records. Kinesis Data Firehose tries to process all records in each PutRecordBatch request. A single record failure does not stop the processing of subsequent records.
A successfully processed record includes a RecordId
value, which is unique for the record. An unsuccessfully processed record includes ErrorCode
and ErrorMessage
values. ErrorCode
reflects the type of error, and is one of the following values: ServiceUnavailableException
or InternalFailure
. ErrorMessage
provides more detailed information about the error.
If there is an internal server error or a timeout, the write might have completed or it might have failed. If FailedPutCount
is greater than 0, retry the request, resending only those records that might have failed processing. This minimizes the possible duplicate records and also reduces the total bytes sent (and corresponding charges). We recommend that you handle any duplicates at the destination.
If PutRecordBatch throws ServiceUnavailableException
, back off and retry. If the exception persists, it is possible that the throughput limits have been exceeded for the delivery stream.
Data records sent to Kinesis Data Firehose are stored for 24 hours from the time they are added to a delivery stream as it attempts to send the records to the destination. If the destination is unreachable for more than 24 hours, the data is no longer available.
Don't concatenate two or more base64 strings to form the data fields of your records. Instead, concatenate the raw data, then perform base64 encoding.
Writes multiple data records into a delivery stream in a single call, which can achieve higher throughput per producer than when writing single records. To write single data records into a delivery stream, use PutRecord. Applications using these operations are referred to as producers.
Kinesis Data Firehose accumulates and publishes a particular metric for a customer account in one minute intervals. It is possible that the bursts of incoming bytes/records ingested to a delivery stream last only for a few seconds. Due to this, the actual spikes in the traffic might not be fully visible in the customer's 1 minute CloudWatch metrics.
For information about service quota, see Amazon Kinesis Data Firehose Quota.
Each PutRecordBatch request supports up to 500 records. Each record in the request can be as large as 1,000 KB (before base64 encoding), up to a limit of 4 MB for the entire request. These limits cannot be changed.
You must specify the name of the delivery stream and the data record when using PutRecord. The data record consists of a data blob that can be up to 1,000 KB in size, and any kind of data. For example, it could be a segment from a log file, geographic location data, website clickstream data, and so on.
Kinesis Data Firehose buffers records before delivering them to the destination. To disambiguate the data blobs at the destination, a common solution is to use delimiters in the data, such as a newline (\\n
) or some other character unique within the data. This allows the consumer application to parse individual data items when reading the data from the destination.
The PutRecordBatch response includes a count of failed records, FailedPutCount
, and an array of responses, RequestResponses
. Even if the PutRecordBatch call succeeds, the value of FailedPutCount
may be greater than 0, indicating that there are records for which the operation didn't succeed. Each entry in the RequestResponses
array provides additional information about the processed record. It directly correlates with a record in the request array using the same ordering, from the top to the bottom. The response array always includes the same number of records as the request array. RequestResponses
includes both successfully and unsuccessfully processed records. Kinesis Data Firehose tries to process all records in each PutRecordBatch request. A single record failure does not stop the processing of subsequent records.
A successfully processed record includes a RecordId
value, which is unique for the record. An unsuccessfully processed record includes ErrorCode
and ErrorMessage
values. ErrorCode
reflects the type of error, and is one of the following values: ServiceUnavailableException
or InternalFailure
. ErrorMessage
provides more detailed information about the error.
If there is an internal server error or a timeout, the write might have completed or it might have failed. If FailedPutCount
is greater than 0, retry the request, resending only those records that might have failed processing. This minimizes the possible duplicate records and also reduces the total bytes sent (and corresponding charges). We recommend that you handle any duplicates at the destination.
If PutRecordBatch throws ServiceUnavailableException
, the API is automatically reinvoked (retried) 3 times. If the exception persists, it is possible that the throughput limits have been exceeded for the delivery stream.
Re-invoking the Put API operations (for example, PutRecord and PutRecordBatch) can result in data duplicates. For larger data assets, allow for a longer time out before retrying Put API operations.
Data records sent to Kinesis Data Firehose are stored for 24 hours from the time they are added to a delivery stream as it attempts to send the records to the destination. If the destination is unreachable for more than 24 hours, the data is no longer available.
Don't concatenate two or more base64 strings to form the data fields of your records. Instead, concatenate the raw data, then perform base64 encoding.
Enables server-side encryption (SSE) for the delivery stream.
This operation is asynchronous. It returns immediately. When you invoke it, Kinesis Data Firehose first sets the encryption status of the stream to ENABLING
, and then to ENABLED
. The encryption status of a delivery stream is the Status
property in DeliveryStreamEncryptionConfiguration. If the operation fails, the encryption status changes to ENABLING_FAILED
. You can continue to read and write data to your delivery stream while the encryption status is ENABLING
, but the data is not encrypted. It can take up to 5 seconds after the encryption status changes to ENABLED
before all records written to the delivery stream are encrypted. To find out whether a record or a batch of records was encrypted, check the response elements PutRecordOutput$Encrypted and PutRecordBatchOutput$Encrypted, respectively.
To check the encryption status of a delivery stream, use DescribeDeliveryStream.
Even if encryption is currently enabled for a delivery stream, you can still invoke this operation on it to change the ARN of the CMK or both its type and ARN. If you invoke this method to change the CMK, and the old CMK is of type CUSTOMER_MANAGED_CMK
, Kinesis Data Firehose schedules the grant it had on the old CMK for retirement. If the new CMK is of type CUSTOMER_MANAGED_CMK
, Kinesis Data Firehose creates a grant that enables it to use the new CMK to encrypt and decrypt data and to manage the grant.
If a delivery stream already has encryption enabled and then you invoke this operation to change the ARN of the CMK or both its type and ARN and you get ENABLING_FAILED
, this only means that the attempt to change the CMK failed. In this case, encryption remains enabled with the old CMK.
If the encryption status of your delivery stream is ENABLING_FAILED
, you can invoke this operation again with a valid CMK. The CMK must be enabled and the key policy mustn't explicitly deny the permission for Kinesis Data Firehose to invoke KMS encrypt and decrypt operations.
You can enable SSE for a delivery stream only if it's a delivery stream that uses DirectPut
as its source.
The StartDeliveryStreamEncryption
and StopDeliveryStreamEncryption
operations have a combined limit of 25 calls per delivery stream per 24 hours. For example, you reach the limit if you call StartDeliveryStreamEncryption
13 times and StopDeliveryStreamEncryption
12 times for the same delivery stream in a 24-hour period.
Enables server-side encryption (SSE) for the delivery stream.
This operation is asynchronous. It returns immediately. When you invoke it, Kinesis Data Firehose first sets the encryption status of the stream to ENABLING
, and then to ENABLED
. The encryption status of a delivery stream is the Status
property in DeliveryStreamEncryptionConfiguration. If the operation fails, the encryption status changes to ENABLING_FAILED
. You can continue to read and write data to your delivery stream while the encryption status is ENABLING
, but the data is not encrypted. It can take up to 5 seconds after the encryption status changes to ENABLED
before all records written to the delivery stream are encrypted. To find out whether a record or a batch of records was encrypted, check the response elements PutRecordOutput$Encrypted and PutRecordBatchOutput$Encrypted, respectively.
To check the encryption status of a delivery stream, use DescribeDeliveryStream.
Even if encryption is currently enabled for a delivery stream, you can still invoke this operation on it to change the ARN of the CMK or both its type and ARN. If you invoke this method to change the CMK, and the old CMK is of type CUSTOMER_MANAGED_CMK
, Kinesis Data Firehose schedules the grant it had on the old CMK for retirement. If the new CMK is of type CUSTOMER_MANAGED_CMK
, Kinesis Data Firehose creates a grant that enables it to use the new CMK to encrypt and decrypt data and to manage the grant.
For the KMS grant creation to be successful, Kinesis Data Firehose APIs StartDeliveryStreamEncryption
and CreateDeliveryStream
should not be called with session credentials that are more than 6 hours old.
If a delivery stream already has encryption enabled and then you invoke this operation to change the ARN of the CMK or both its type and ARN and you get ENABLING_FAILED
, this only means that the attempt to change the CMK failed. In this case, encryption remains enabled with the old CMK.
If the encryption status of your delivery stream is ENABLING_FAILED
, you can invoke this operation again with a valid CMK. The CMK must be enabled and the key policy mustn't explicitly deny the permission for Kinesis Data Firehose to invoke KMS encrypt and decrypt operations.
You can enable SSE for a delivery stream only if it's a delivery stream that uses DirectPut
as its source.
The StartDeliveryStreamEncryption
and StopDeliveryStreamEncryption
operations have a combined limit of 25 calls per delivery stream per 24 hours. For example, you reach the limit if you call StartDeliveryStreamEncryption
13 times and StopDeliveryStreamEncryption
12 times for the same delivery stream in a 24-hour period.
The ARN of the role used to access the Amazon MSK cluster.
" + }, + "Connectivity": { + "shape": "Connectivity", + "documentation": "The type of connectivity used to access the Amazon MSK cluster.
" + } + }, + "documentation": "The authentication configuration of the Amazon MSK cluster.
" + }, "BlockSizeBytes": { "type": "integer", "min": 67108864 @@ -811,7 +829,7 @@ "type": "string", "max": 512, "min": 1, - "pattern": "jdbc:(redshift|postgresql)://((?!-)[A-Za-z0-9-]{1,63}(?The destination in the Serverless offering for Amazon OpenSearch Service. You can specify only one destination." + }, + "MSKSourceConfiguration": { + "shape": "MSKSourceConfiguration" } } }, @@ -1170,7 +1198,8 @@ "type": "string", "enum": [ "DirectPut", - "KinesisStreamAsSource" + "KinesisStreamAsSource", + "MSKAsSource" ] }, "DeliveryStreamVersionId": { @@ -2306,6 +2335,57 @@ "min": 0, "pattern": "[^:*]*" }, + "MSKClusterARN": { + "type": "string", + "max": 512, + "min": 1, + "pattern": "arn:.*" + }, + "MSKSourceConfiguration": { + "type": "structure", + "required": [ + "MSKClusterARN", + "TopicName", + "AuthenticationConfiguration" + ], + "members": { + "MSKClusterARN": { + "shape": "MSKClusterARN", + "documentation": "The ARN of the Amazon MSK cluster.
" + }, + "TopicName": { + "shape": "TopicName", + "documentation": "The topic name within the Amazon MSK cluster.
" + }, + "AuthenticationConfiguration": { + "shape": "AuthenticationConfiguration", + "documentation": "The authentication configuration of the Amazon MSK cluster.
" + } + }, + "documentation": "The configuration for the Amazon MSK cluster to be used as the source for a delivery stream.
" + }, + "MSKSourceDescription": { + "type": "structure", + "members": { + "MSKClusterARN": { + "shape": "MSKClusterARN", + "documentation": "The ARN of the Amazon MSK cluster.
" + }, + "TopicName": { + "shape": "TopicName", + "documentation": "The topic name within the Amazon MSK cluster.
" + }, + "AuthenticationConfiguration": { + "shape": "AuthenticationConfiguration", + "documentation": "The authentication configuration of the Amazon MSK cluster.
" + }, + "DeliveryStartTimestamp": { + "shape": "DeliveryStartTimestamp", + "documentation": "Kinesis Data Firehose starts retrieving records from the topic within the Amazon MSK cluster starting with this timestamp.
" + } + }, + "documentation": "Details about the Amazon MSK cluster used as the source for a Kinesis Data Firehose delivery stream.
" + }, "NoEncryptionConfig": { "type": "string", "enum": [ @@ -2559,7 +2639,8 @@ "BufferSizeInMBs", "BufferIntervalInSeconds", "SubRecordType", - "Delimiter" + "Delimiter", + "CompressionFormat" ] }, "ProcessorParameterValue": { @@ -2572,6 +2653,7 @@ "type": "string", "enum": [ "RecordDeAggregation", + "Decompression", "Lambda", "MetadataExtraction", "AppendDelimiterToRecord" @@ -3103,6 +3185,10 @@ "KinesisStreamSourceDescription": { "shape": "KinesisStreamSourceDescription", "documentation": "The KinesisStreamSourceDescription value for the source Kinesis data stream.
" + }, + "MSKSourceDescription": { + "shape": "MSKSourceDescription", + "documentation": "The configuration description for the Amazon MSK cluster to be used as the source for a delivery stream.
" } }, "documentation": "Details about a Kinesis data stream used as the source for a Kinesis Data Firehose delivery stream.
" @@ -3374,6 +3460,12 @@ "Timestamp": { "type": "timestamp" }, + "TopicName": { + "type": "string", + "max": 255, + "min": 1, + "pattern": "[a-zA-Z0-9\\\\._\\\\-]+" + }, "UntagDeliveryStreamInput": { "type": "structure", "required": [ diff --git a/apis/iot-2015-05-28.min.json b/apis/iot-2015-05-28.min.json index e91bd23b56..410b4c4625 100644 --- a/apis/iot-2015-05-28.min.json +++ b/apis/iot-2015-05-28.min.json @@ -1550,10 +1550,10 @@ ], "members": { "subnetIds": { - "shape": "Sed" + "shape": "Seh" }, "securityGroups": { - "shape": "Sef" + "shape": "Sej" }, "vpcId": {}, "roleArn": {} @@ -1567,7 +1567,7 @@ "type": "structure", "members": { "topicRuleDestination": { - "shape": "Sej" + "shape": "Sen" } } } @@ -2399,10 +2399,10 @@ "members": { "roleArn": {}, "auditNotificationTargetConfigurations": { - "shape": "Sgn" + "shape": "Sgr" }, "auditCheckConfigurations": { - "shape": "Sgq" + "shape": "Sgu" } } } @@ -2428,7 +2428,7 @@ "type": "structure", "members": { "finding": { - "shape": "Sgv" + "shape": "Sgz" } } } @@ -2485,13 +2485,13 @@ } }, "target": { - "shape": "Shf" + "shape": "Shj" }, "auditCheckToActionsMapping": { - "shape": "Shj" + "shape": "Shn" }, "actionsDefinition": { - "shape": "Shl" + "shape": "Shp" } } } @@ -2630,7 +2630,7 @@ "type": "structure", "members": { "authorizerDescription": { - "shape": "Sic" + "shape": "Sig" } } } @@ -2715,13 +2715,13 @@ }, "generationId": {}, "validity": { - "shape": "Sip" + "shape": "Sit" }, "certificateMode": {} } }, "registrationConfig": { - "shape": "Sir" + "shape": "Siv" } } } @@ -2783,7 +2783,7 @@ }, "generationId": {}, "validity": { - "shape": "Sip" + "shape": "Sit" }, "certificateMode": {} } @@ -2837,7 +2837,7 @@ "type": "structure", "members": { "authorizerDescription": { - "shape": "Sic" + "shape": "Sig" } } } @@ -2863,7 +2863,7 @@ "type": "structure", "members": { "taskSummary": { - "shape": "Sj4" + "shape": "Sj8" } } } @@ -2986,7 +2986,7 @@ "type": "structure", "members": { "eventConfigurations": { - "shape": "Sju" + "shape": "Sjy" }, "creationDate": { "type": "timestamp" @@ -3342,7 +3342,7 @@ "description": {}, "templateVersion": {}, "environments": { - "shape": "Sl0" + "shape": "Sl4" }, "documentParameters": { "type": "list", @@ -3717,7 +3717,7 @@ "members": { "parentGroupName": {}, "rootToParentThingGroups": { - "shape": "Slt" + "shape": "Slx" }, "creationDate": { "type": "timestamp" @@ -3803,7 +3803,7 @@ "shape": "Sas" }, "thingTypeMetadata": { - "shape": "Sm6" + "shape": "Sma" } } } @@ -4111,10 +4111,10 @@ "type": "structure", "members": { "thingIndexingConfiguration": { - "shape": "Sn5" + "shape": "Sn9" }, "thingGroupIndexingConfiguration": { - "shape": "Snh" + "shape": "Snl" } } } @@ -4276,7 +4276,7 @@ "type": "structure", "members": { "versionUpdateByJobsConfig": { - "shape": "Snx" + "shape": "So1" } } } @@ -4578,7 +4578,7 @@ "type": "structure", "members": { "topicRuleDestination": { - "shape": "Sej" + "shape": "Sen" } } } @@ -4661,7 +4661,7 @@ "shape": "S9n" }, "violationEventAdditionalInfo": { - "shape": "Sp7" + "shape": "Spb" }, "verificationState": {}, "verificationStateDescription": {}, @@ -4712,7 +4712,7 @@ "type": "structure", "members": { "policies": { - "shape": "Spe" + "shape": "Spi" }, "nextMarker": {} } @@ -4751,7 +4751,7 @@ "findings": { "type": "list", "member": { - "shape": "Sgv" + "shape": "Sgz" } }, "nextToken": {} @@ -5069,7 +5069,7 @@ "billingGroups": { "type": "list", "member": { - "shape": "Slu" + "shape": "Sly" } }, "nextToken": {} @@ -5153,7 +5153,7 @@ "type": "structure", "members": { "certificates": { - "shape": "Sqg" + "shape": "Sqk" }, "nextMarker": {} } @@ -5194,7 +5194,7 @@ "type": "structure", "members": { "certificates": { - "shape": "Sqg" + "shape": "Sqk" }, "nextMarker": {} } @@ -5338,7 +5338,7 @@ "tasks": { "type": "list", "member": { - "shape": "Sj4" + "shape": "Sj8" } }, "nextToken": {} @@ -5522,7 +5522,7 @@ "members": { "thingArn": {}, "jobExecutionSummary": { - "shape": "Srg" + "shape": "Srk" } } } @@ -5579,7 +5579,7 @@ "members": { "jobId": {}, "jobExecutionSummary": { - "shape": "Srg" + "shape": "Srk" } } } @@ -5734,7 +5734,7 @@ "templateName": {}, "description": {}, "environments": { - "shape": "Sl0" + "shape": "Sl4" }, "templateVersion": {} } @@ -6077,7 +6077,7 @@ "type": "structure", "members": { "policies": { - "shape": "Spe" + "shape": "Spi" }, "nextMarker": {} } @@ -6118,7 +6118,7 @@ "type": "structure", "members": { "principals": { - "shape": "Ssr" + "shape": "Ssv" }, "nextMarker": {} } @@ -6198,7 +6198,7 @@ "type": "structure", "members": { "policies": { - "shape": "Spe" + "shape": "Spi" }, "nextMarker": {} } @@ -6235,7 +6235,7 @@ "type": "structure", "members": { "things": { - "shape": "St1" + "shape": "St5" }, "nextToken": {} } @@ -6368,7 +6368,7 @@ "type": "structure", "members": { "relatedResources": { - "shape": "Sh0" + "shape": "Sh4" }, "nextToken": {} } @@ -6481,7 +6481,7 @@ "securityProfileIdentifiers": { "type": "list", "member": { - "shape": "Stm" + "shape": "Stq" } }, "nextToken": {} @@ -6528,10 +6528,10 @@ "type": "structure", "members": { "securityProfileIdentifier": { - "shape": "Stm" + "shape": "Stq" }, "target": { - "shape": "Str" + "shape": "Stv" } } } @@ -6684,7 +6684,7 @@ "securityProfileTargets": { "type": "list", "member": { - "shape": "Str" + "shape": "Stv" } }, "nextToken": {} @@ -6727,7 +6727,7 @@ "type": "structure", "members": { "thingGroups": { - "shape": "Slt" + "shape": "Slx" }, "nextToken": {} } @@ -6763,7 +6763,7 @@ "type": "structure", "members": { "thingGroups": { - "shape": "Slt" + "shape": "Slx" }, "nextToken": {} } @@ -6799,7 +6799,7 @@ "type": "structure", "members": { "principals": { - "shape": "Ssr" + "shape": "Ssv" }, "nextToken": {} } @@ -6919,7 +6919,7 @@ "shape": "Sas" }, "thingTypeMetadata": { - "shape": "Sm6" + "shape": "Sma" } } } @@ -7018,7 +7018,7 @@ "type": "structure", "members": { "things": { - "shape": "St1" + "shape": "St5" }, "nextToken": {} } @@ -7059,7 +7059,7 @@ "type": "structure", "members": { "things": { - "shape": "St1" + "shape": "St5" }, "nextToken": {} } @@ -7111,10 +7111,10 @@ "type": "structure", "members": { "subnetIds": { - "shape": "Sed" + "shape": "Seh" }, "securityGroups": { - "shape": "Sef" + "shape": "Sej" }, "vpcId": {}, "roleArn": {} @@ -7211,7 +7211,7 @@ "type": "structure", "members": { "logTarget": { - "shape": "Svf" + "shape": "Svj" }, "logLevel": {} } @@ -7293,7 +7293,7 @@ "shape": "S9n" }, "violationEventAdditionalInfo": { - "shape": "Sp7" + "shape": "Spb" }, "violationEventType": {}, "verificationState": {}, @@ -7355,7 +7355,7 @@ "type": "boolean" }, "registrationConfig": { - "shape": "Sir" + "shape": "Siv" }, "tags": { "shape": "S2e" @@ -7564,7 +7564,7 @@ "thingId": {}, "thingTypeName": {}, "thingGroupNames": { - "shape": "Swb" + "shape": "Swf" }, "attributes": { "shape": "S3o" @@ -7598,7 +7598,7 @@ "shape": "S3o" }, "parentGroupNames": { - "shape": "Swb" + "shape": "Swf" } } } @@ -7686,7 +7686,7 @@ ], "members": { "logTarget": { - "shape": "Svf" + "shape": "Svj" }, "logLevel": {} } @@ -7725,10 +7725,10 @@ "locationName": "taskId" }, "target": { - "shape": "Shf" + "shape": "Shj" }, "auditCheckToActionsMapping": { - "shape": "Shj" + "shape": "Shn" }, "clientRequestToken": { "idempotencyToken": true @@ -7761,14 +7761,14 @@ "locationName": "taskId" }, "target": { - "shape": "Sj6" + "shape": "Sja" }, "actions": { "type": "list", "member": {} }, "violationEventOccurrenceRange": { - "shape": "Sj9" + "shape": "Sjd" }, "includeOnlyActiveViolations": { "type": "boolean" @@ -7895,7 +7895,7 @@ "authInfos": { "type": "list", "member": { - "shape": "Sx4" + "shape": "Sx8" } }, "clientId": { @@ -7903,10 +7903,10 @@ "locationName": "clientId" }, "policyNamesToAdd": { - "shape": "Sx8" + "shape": "Sxc" }, "policyNamesToSkip": { - "shape": "Sx8" + "shape": "Sxc" } } }, @@ -7919,13 +7919,13 @@ "type": "structure", "members": { "authInfo": { - "shape": "Sx4" + "shape": "Sx8" }, "allowed": { "type": "structure", "members": { "policies": { - "shape": "Spe" + "shape": "Spi" } } }, @@ -7936,7 +7936,7 @@ "type": "structure", "members": { "policies": { - "shape": "Spe" + "shape": "Spi" } } }, @@ -7944,7 +7944,7 @@ "type": "structure", "members": { "policies": { - "shape": "Spe" + "shape": "Spi" } } } @@ -8089,10 +8089,10 @@ "members": { "roleArn": {}, "auditNotificationTargetConfigurations": { - "shape": "Sgn" + "shape": "Sgr" }, "auditCheckConfigurations": { - "shape": "Sgq" + "shape": "Sgu" } } }, @@ -8222,7 +8222,7 @@ "locationName": "newAutoRegistrationStatus" }, "registrationConfig": { - "shape": "Sir" + "shape": "Siv" }, "removeAutoRegistration": { "type": "boolean" @@ -8407,7 +8407,7 @@ "type": "structure", "members": { "eventConfigurations": { - "shape": "Sju" + "shape": "Sjy" } } }, @@ -8458,10 +8458,10 @@ "type": "structure", "members": { "thingIndexingConfiguration": { - "shape": "Sn5" + "shape": "Sn9" }, "thingGroupIndexingConfiguration": { - "shape": "Snh" + "shape": "Snl" } } }, @@ -8583,7 +8583,7 @@ "type": "structure", "members": { "versionUpdateByJobsConfig": { - "shape": "Snx" + "shape": "So1" }, "clientToken": { "idempotencyToken": true, @@ -8921,10 +8921,10 @@ "members": { "thingName": {}, "thingGroupsToAdd": { - "shape": "Szr" + "shape": "Szv" }, "thingGroupsToRemove": { - "shape": "Szr" + "shape": "Szv" }, "overrideDynamicGroups": { "type": "boolean" @@ -10116,6 +10116,20 @@ "type": "map", "key": {}, "value": {} + }, + "headers": { + "type": "list", + "member": { + "type": "structure", + "required": [ + "key", + "value" + ], + "members": { + "key": {}, + "value": {} + } + } } } }, @@ -10165,15 +10179,15 @@ } } }, - "Sed": { + "Seh": { "type": "list", "member": {} }, - "Sef": { + "Sej": { "type": "list", "member": {} }, - "Sej": { + "Sen": { "type": "structure", "members": { "arn": {}, @@ -10195,10 +10209,10 @@ "type": "structure", "members": { "subnetIds": { - "shape": "Sed" + "shape": "Seh" }, "securityGroups": { - "shape": "Sef" + "shape": "Sej" }, "vpcId": {}, "roleArn": {} @@ -10206,7 +10220,7 @@ } } }, - "Sgn": { + "Sgr": { "type": "map", "key": {}, "value": { @@ -10220,7 +10234,7 @@ } } }, - "Sgq": { + "Sgu": { "type": "map", "key": {}, "value": { @@ -10232,7 +10246,7 @@ } } }, - "Sgv": { + "Sgz": { "type": "structure", "members": { "findingId": {}, @@ -10253,12 +10267,12 @@ "shape": "S1o" }, "additionalInfo": { - "shape": "Sgz" + "shape": "Sh3" } } }, "relatedResources": { - "shape": "Sh0" + "shape": "Sh4" }, "reasonForNonCompliance": {}, "reasonForNonComplianceCode": {}, @@ -10267,12 +10281,12 @@ } } }, - "Sgz": { + "Sh3": { "type": "map", "key": {}, "value": {} }, - "Sh0": { + "Sh4": { "type": "list", "member": { "type": "structure", @@ -10282,12 +10296,12 @@ "shape": "S1o" }, "additionalInfo": { - "shape": "Sgz" + "shape": "Sh3" } } } }, - "Shf": { + "Shj": { "type": "structure", "members": { "auditTaskId": {}, @@ -10305,7 +10319,7 @@ } } }, - "Shj": { + "Shn": { "type": "map", "key": {}, "value": { @@ -10313,7 +10327,7 @@ "member": {} } }, - "Shl": { + "Shp": { "type": "list", "member": { "type": "structure", @@ -10327,7 +10341,7 @@ } } }, - "Sic": { + "Sig": { "type": "structure", "members": { "authorizerName": {}, @@ -10352,7 +10366,7 @@ } } }, - "Sip": { + "Sit": { "type": "structure", "members": { "notBefore": { @@ -10363,7 +10377,7 @@ } } }, - "Sir": { + "Siv": { "type": "structure", "members": { "templateBody": {}, @@ -10371,7 +10385,7 @@ "templateName": {} } }, - "Sj4": { + "Sj8": { "type": "structure", "members": { "taskId": {}, @@ -10383,10 +10397,10 @@ "type": "timestamp" }, "target": { - "shape": "Sj6" + "shape": "Sja" }, "violationEventOccurrenceRange": { - "shape": "Sj9" + "shape": "Sjd" }, "onlyActiveViolationsIncluded": { "type": "boolean" @@ -10395,7 +10409,7 @@ "type": "boolean" }, "actionsDefinition": { - "shape": "Shl" + "shape": "Shp" }, "taskStatistics": { "type": "structure", @@ -10413,7 +10427,7 @@ } } }, - "Sj6": { + "Sja": { "type": "structure", "members": { "violationIds": { @@ -10424,7 +10438,7 @@ "behaviorName": {} } }, - "Sj9": { + "Sjd": { "type": "structure", "required": [ "startTime", @@ -10439,7 +10453,7 @@ } } }, - "Sju": { + "Sjy": { "type": "map", "key": {}, "value": { @@ -10451,24 +10465,24 @@ } } }, - "Sl0": { + "Sl4": { "type": "list", "member": {} }, - "Slt": { + "Slx": { "type": "list", "member": { - "shape": "Slu" + "shape": "Sly" } }, - "Slu": { + "Sly": { "type": "structure", "members": { "groupName": {}, "groupArn": {} } }, - "Sm6": { + "Sma": { "type": "structure", "members": { "deprecated": { @@ -10482,7 +10496,7 @@ } } }, - "Sn5": { + "Sn9": { "type": "structure", "required": [ "thingIndexingMode" @@ -10493,10 +10507,10 @@ "deviceDefenderIndexingMode": {}, "namedShadowIndexingMode": {}, "managedFields": { - "shape": "Sna" + "shape": "Sne" }, "customFields": { - "shape": "Sna" + "shape": "Sne" }, "filter": { "type": "structure", @@ -10509,7 +10523,7 @@ } } }, - "Sna": { + "Sne": { "type": "list", "member": { "type": "structure", @@ -10519,7 +10533,7 @@ } } }, - "Snh": { + "Snl": { "type": "structure", "required": [ "thingGroupIndexingMode" @@ -10527,14 +10541,14 @@ "members": { "thingGroupIndexingMode": {}, "managedFields": { - "shape": "Sna" + "shape": "Sne" }, "customFields": { - "shape": "Sna" + "shape": "Sne" } } }, - "Snx": { + "So1": { "type": "structure", "members": { "enabled": { @@ -10543,13 +10557,13 @@ "roleArn": {} } }, - "Sp7": { + "Spb": { "type": "structure", "members": { "confidenceLevel": {} } }, - "Spe": { + "Spi": { "type": "list", "member": { "type": "structure", @@ -10559,7 +10573,7 @@ } } }, - "Sqg": { + "Sqk": { "type": "list", "member": { "type": "structure", @@ -10574,7 +10588,7 @@ } } }, - "Srg": { + "Srk": { "type": "structure", "members": { "status": {}, @@ -10595,15 +10609,15 @@ } } }, - "Ssr": { + "Ssv": { "type": "list", "member": {} }, - "St1": { + "St5": { "type": "list", "member": {} }, - "Stm": { + "Stq": { "type": "structure", "required": [ "name", @@ -10614,7 +10628,7 @@ "arn": {} } }, - "Str": { + "Stv": { "type": "structure", "required": [ "arn" @@ -10623,7 +10637,7 @@ "arn": {} } }, - "Svf": { + "Svj": { "type": "structure", "required": [ "targetType" @@ -10633,11 +10647,11 @@ "targetName": {} } }, - "Swb": { + "Swf": { "type": "list", "member": {} }, - "Sx4": { + "Sx8": { "type": "structure", "required": [ "resources" @@ -10650,11 +10664,11 @@ } } }, - "Sx8": { + "Sxc": { "type": "list", "member": {} }, - "Szr": { + "Szv": { "type": "list", "member": {} } diff --git a/apis/iot-2015-05-28.normal.json b/apis/iot-2015-05-28.normal.json index 6ddad9abd3..42209ebaee 100644 --- a/apis/iot-2015-05-28.normal.json +++ b/apis/iot-2015-05-28.normal.json @@ -639,7 +639,7 @@ "shape": "InternalFailureException" } ], - "documentation": "Creates an X.509 certificate using the specified certificate signing request.
Requires permission to access the CreateCertificateFromCsr action.
The CSR must include a public key that is either an RSA key with a length of at least 2048 bits or an ECC key from NIST P-256 or NIST P-384 curves. For supported certificates, consult Certificate signing algorithms supported by IoT.
Reusing the same certificate signing request (CSR) results in a distinct certificate.
You can create multiple certificates in a batch by creating a directory, copying multiple .csr
files into that directory, and then specifying that directory on the command line. The following commands show how to create a batch of certificates given a batch of CSRs. In the following commands, we assume that a set of CSRs are located inside of the directory my-csr-directory:
On Linux and OS X, the command is:
$ ls my-csr-directory/ | xargs -I {} aws iot create-certificate-from-csr --certificate-signing-request file://my-csr-directory/{}
This command lists all of the CSRs in my-csr-directory and pipes each CSR file name to the aws iot create-certificate-from-csr
Amazon Web Services CLI command to create a certificate for the corresponding CSR.
You can also run the aws iot create-certificate-from-csr
part of the command in parallel to speed up the certificate creation process:
$ ls my-csr-directory/ | xargs -P 10 -I {} aws iot create-certificate-from-csr --certificate-signing-request file://my-csr-directory/{}
On Windows PowerShell, the command to create certificates for all CSRs in my-csr-directory is:
> ls -Name my-csr-directory | %{aws iot create-certificate-from-csr --certificate-signing-request file://my-csr-directory/$_}
On a Windows command prompt, the command to create certificates for all CSRs in my-csr-directory is:
> forfiles /p my-csr-directory /c \"cmd /c aws iot create-certificate-from-csr --certificate-signing-request file://@path\"
Creates an X.509 certificate using the specified certificate signing request.
Requires permission to access the CreateCertificateFromCsr action.
The CSR must include a public key that is either an RSA key with a length of at least 2048 bits or an ECC key from NIST P-256, NIST P-384, or NIST P-521 curves. For supported certificates, consult Certificate signing algorithms supported by IoT.
Reusing the same certificate signing request (CSR) results in a distinct certificate.
You can create multiple certificates in a batch by creating a directory, copying multiple .csr
files into that directory, and then specifying that directory on the command line. The following commands show how to create a batch of certificates given a batch of CSRs. In the following commands, we assume that a set of CSRs are located inside of the directory my-csr-directory:
On Linux and OS X, the command is:
$ ls my-csr-directory/ | xargs -I {} aws iot create-certificate-from-csr --certificate-signing-request file://my-csr-directory/{}
This command lists all of the CSRs in my-csr-directory and pipes each CSR file name to the aws iot create-certificate-from-csr
Amazon Web Services CLI command to create a certificate for the corresponding CSR.
You can also run the aws iot create-certificate-from-csr
part of the command in parallel to speed up the certificate creation process:
$ ls my-csr-directory/ | xargs -P 10 -I {} aws iot create-certificate-from-csr --certificate-signing-request file://my-csr-directory/{}
On Windows PowerShell, the command to create certificates for all CSRs in my-csr-directory is:
> ls -Name my-csr-directory | %{aws iot create-certificate-from-csr --certificate-signing-request file://my-csr-directory/$_}
On a Windows command prompt, the command to create certificates for all CSRs in my-csr-directory is:
> forfiles /p my-csr-directory /c \"cmd /c aws iot create-certificate-from-csr --certificate-signing-request file://@path\"
Deletes a specific version from a software package.
Note: If a package version is designated as default, you must remove the designation from the package using the UpdatePackage action.
", + "documentation": "Deletes a specific version from a software package.
Note: If a package version is designated as default, you must remove the designation from the software package using the UpdatePackage action.
", "idempotent": true }, "DeletePolicy": { @@ -7387,7 +7387,7 @@ "shape": "ResourceNotFoundException" } ], - "documentation": "Updates the supported fields for a specific package.
Requires permission to access the UpdatePackage and GetIndexingConfiguration actions.
", + "documentation": "Updates the supported fields for a specific software package.
Requires permission to access the UpdatePackage and GetIndexingConfiguration actions.
", "idempotent": true }, "UpdatePackageConfiguration": { @@ -7414,7 +7414,7 @@ "shape": "ValidationException" } ], - "documentation": "Updates the package configuration.
Requires permission to access the UpdatePackageConfiguration and iam:PassRole actions.
", + "documentation": "Updates the software package configuration.
Requires permission to access the UpdatePackageConfiguration and iam:PassRole actions.
", "idempotent": true }, "UpdatePackageVersion": { @@ -9276,7 +9276,7 @@ }, "criteria": { "shape": "BehaviorCriteria", - "documentation": "The criteria that determine if a device is behaving normally in regard to the metric
.
The criteria that determine if a device is behaving normally in regard to the metric
.
In the IoT console, you can choose to be sent an alert through Amazon SNS when IoT Device Defender detects that a device is behaving anomalously.
An S3 link to the job document to use in the template. Required if you don't specify a value for document
.
If the job document resides in an S3 bucket, you must use a placeholder link when specifying the document.
The placeholder link is of the following form:
${aws:iot:s3-presigned-url:https://s3.amazonaws.com/bucket/key}
where bucket is your bucket name and key is the object in the bucket to which you are linking.
An S3 link, or S3 object URL, to the job document. The link is an Amazon S3 object URL and is required if you don't specify a value for document
.
For example, --document-source https://s3.region-code.amazonaws.com/example-firmware/device-firmware.1.0
For more information, see Methods for accessing a bucket.
" }, "document": { "shape": "JobDocument", @@ -10913,7 +10913,7 @@ }, "additionalParameters": { "shape": "AdditionalParameterMap", - "documentation": "A list of additional OTA update parameters which are name-value pairs.
" + "documentation": "A list of additional OTA update parameters, which are name-value pairs. They won't be sent to devices as a part of the Job document.
" }, "tags": { "shape": "TagList", @@ -10954,7 +10954,7 @@ "members": { "packageName": { "shape": "PackageName", - "documentation": "The name of the new package.
", + "documentation": "The name of the new software package.
", "location": "uri", "locationName": "packageName" }, @@ -10980,7 +10980,7 @@ "members": { "packageName": { "shape": "PackageName", - "documentation": "The name of the package.
" + "documentation": "The name of the software package.
" }, "packageArn": { "shape": "PackageArn", @@ -11001,7 +11001,7 @@ "members": { "packageName": { "shape": "PackageName", - "documentation": "The name of the associated package.
", + "documentation": "The name of the associated software package.
", "location": "uri", "locationName": "packageName" }, @@ -11041,7 +11041,7 @@ }, "packageName": { "shape": "PackageName", - "documentation": "The name of the associated package.
" + "documentation": "The name of the associated software package.
" }, "versionName": { "shape": "VersionName", @@ -12110,7 +12110,7 @@ "members": { "packageName": { "shape": "PackageName", - "documentation": "The name of the target package.
", + "documentation": "The name of the target software package.
", "location": "uri", "locationName": "packageName" }, @@ -12136,7 +12136,7 @@ "members": { "packageName": { "shape": "PackageName", - "documentation": "The name of the associated package.
", + "documentation": "The name of the associated software package.
", "location": "uri", "locationName": "packageName" }, @@ -12978,7 +12978,7 @@ "members": { "endpointType": { "shape": "EndpointType", - "documentation": "The endpoint type. Valid endpoint types include:
iot:Data
- Returns a VeriSign signed data endpoint.
iot:Data-ATS
- Returns an ATS signed data endpoint.
iot:CredentialProvider
- Returns an IoT credentials provider API endpoint.
iot:Jobs
- Returns an IoT device management Jobs API endpoint.
We strongly recommend that customers use the newer iot:Data-ATS
endpoint type to avoid issues related to the widespread distrust of Symantec certificate authorities.
The endpoint type. Valid endpoint types include:
iot:Data
- Returns a VeriSign signed data endpoint.
iot:Data-ATS
- Returns an ATS signed data endpoint.
iot:CredentialProvider
- Returns an IoT credentials provider API endpoint.
iot:Jobs
- Returns an IoT device management Jobs API endpoint.
We strongly recommend that customers use the newer iot:Data-ATS
endpoint type to avoid issues related to the widespread distrust of Symantec certificate authorities. ATS Signed Certificates are more secure and are trusted by most popular browsers.
The name of the target package.
", + "documentation": "The name of the target software package.
", "location": "uri", "locationName": "packageName" } @@ -15081,7 +15081,7 @@ "members": { "packageName": { "shape": "PackageName", - "documentation": "The name of the package.
" + "documentation": "The name of the software package.
" }, "packageArn": { "shape": "PackageArn", @@ -15135,7 +15135,7 @@ }, "packageName": { "shape": "PackageName", - "documentation": "The name of the package.
" + "documentation": "The name of the software package.
" }, "versionName": { "shape": "VersionName", @@ -16269,10 +16269,50 @@ "clientProperties": { "shape": "ClientProperties", "documentation": "Properties of the Apache Kafka producer client.
" + }, + "headers": { + "shape": "KafkaHeaders", + "documentation": "The list of Kafka headers that you specify.
" } }, "documentation": "Send messages to an Amazon Managed Streaming for Apache Kafka (Amazon MSK) or self-managed Apache Kafka cluster.
" }, + "KafkaActionHeader": { + "type": "structure", + "required": [ + "key", + "value" + ], + "members": { + "key": { + "shape": "KafkaHeaderKey", + "documentation": "The key of the Kafka header.
" + }, + "value": { + "shape": "KafkaHeaderValue", + "documentation": "The value of the Kafka header.
" + } + }, + "documentation": "Specifies a Kafka header using key-value pairs when you create a Rule’s Kafka Action. You can use these headers to route data from IoT clients to downstream Kafka clusters without modifying your message payload.
For more information about Rule's Kafka action, see Apache Kafka.
" + }, + "KafkaHeaderKey": { + "type": "string", + "max": 16384, + "min": 0 + }, + "KafkaHeaderValue": { + "type": "string", + "max": 16384, + "min": 0 + }, + "KafkaHeaders": { + "type": "list", + "member": { + "shape": "KafkaActionHeader" + }, + "max": 100, + "min": 1 + }, "Key": { "type": "string" }, @@ -17599,7 +17639,7 @@ "members": { "packageName": { "shape": "PackageName", - "documentation": "The name of the target package.
", + "documentation": "The name of the target software package.
", "location": "uri", "locationName": "packageName" }, @@ -18970,7 +19010,9 @@ "THING_GROUP", "CLIENT_ID", "SOURCE_IP", - "PRINCIPAL_ID" + "PRINCIPAL_ID", + "EVENT_TYPE", + "DEVICE_DEFENDER" ] }, "LoggingOptionsPayload": { @@ -19520,7 +19562,7 @@ }, "attributes": { "shape": "AttributesMap", - "documentation": "A list of name/attribute pairs.
" + "documentation": "A list of name-attribute pairs. They won't be sent to devices as a part of the Job document.
" } }, "documentation": "Describes a file to be associated with an OTA update.
" @@ -19744,7 +19786,7 @@ "members": { "packageName": { "shape": "PackageName", - "documentation": "The name for the target package.
" + "documentation": "The name for the target software package.
" }, "defaultVersionName": { "shape": "VersionName", @@ -21136,11 +21178,11 @@ "members": { "startTime": { "shape": "StringDateTime", - "documentation": "The time a job will begin rollout of the job document to all devices in the target group for a job. The startTime
can be scheduled up to a year in advance and must be scheduled a minimum of thirty minutes from the current time. The date and time format for the startTime
is YYYY-MM-DD for the date and HH:MM for the time.
The time a job will begin rollout of the job document to all devices in the target group for a job. The startTime
can be scheduled up to a year in advance and must be scheduled a minimum of thirty minutes from the current time. The date and time format for the startTime
is YYYY-MM-DD for the date and HH:MM for the time.
For more information on the syntax for startTime
when using an API command or the Command Line Interface, see Timestamp.
The time a job will stop rollout of the job document to all devices in the target group for a job. The endTime
must take place no later than two years from the current time and be scheduled a minimum of thirty minutes from the current time. The minimum duration between startTime
and endTime
is thirty minutes. The maximum duration between startTime
and endTime
is two years. The date and time format for the endTime
is YYYY-MM-DD for the date and HH:MM for the time.
The time a job will stop rollout of the job document to all devices in the target group for a job. The endTime
must take place no later than two years from the current time and be scheduled a minimum of thirty minutes from the current time. The minimum duration between startTime
and endTime
is thirty minutes. The maximum duration between startTime
and endTime
is two years. The date and time format for the endTime
is YYYY-MM-DD for the date and HH:MM for the time.
For more information on the syntax for endTime
when using an API command or the Command Line Interface, see Timestamp.
The name of the target package.
", + "documentation": "The name of the target software package.
", "location": "uri", "locationName": "packageName" }, @@ -23856,7 +23898,7 @@ }, "attributes": { "shape": "ResourceAttributes", - "documentation": "Metadata that can be used to define a package version’s configuration. For example, the S3 file location, configuration options that are being sent to the device or fleet.
Note: Attributes can be updated only when the package version is in a draft state.
The combined size of all the attributes on a package version is limited to 3KB.
" + "documentation": "Metadata that can be used to define a package version’s configuration. For example, the Amazon S3 file location, configuration options that are being sent to the device or fleet.
Note: Attributes can be updated only when the package version is in a draft state.
The combined size of all the attributes on a package version is limited to 3KB.
" }, "action": { "shape": "PackageVersionAction", diff --git a/apis/textract-2018-06-27.normal.json b/apis/textract-2018-06-27.normal.json index 8c7335122e..242a9c6c09 100644 --- a/apis/textract-2018-06-27.normal.json +++ b/apis/textract-2018-06-27.normal.json @@ -610,7 +610,7 @@ }, "FeatureTypes": { "shape": "FeatureTypes", - "documentation": "A list of the types of analysis to perform. Add TABLES to the list to return information about the tables that are detected in the input document. Add FORMS to return detected form data. Add SIGNATURES to return the locations of detected signatures. To perform both forms and table analysis, add TABLES and FORMS to FeatureTypes
. To detect signatures within form data and table data, add SIGNATURES to either TABLES or FORMS. All lines and words detected in the document are included in the response (including text that isn't related to the value of FeatureTypes
).
A list of the types of analysis to perform. Add TABLES to the list to return information about the tables that are detected in the input document. Add FORMS to return detected form data. Add SIGNATURES to return the locations of detected signatures. Add LAYOUT to the list to return information about the layout of the document. To perform both forms and table analysis, add TABLES and FORMS to FeatureTypes
. To detect signatures within the document and within form data and table data, add SIGNATURES to either TABLES or FORMS. All lines and words detected in the document are included in the response (including text that isn't related to the value of FeatureTypes
).
The type of text item that's recognized. In operations for text detection, the following types are returned:
PAGE - Contains a list of the LINE Block
objects that are detected on a document page.
WORD - A word detected on a document page. A word is one or more ISO basic Latin script characters that aren't separated by spaces.
LINE - A string of tab-delimited, contiguous words that are detected on a document page.
In text analysis operations, the following types are returned:
PAGE - Contains a list of child Block
objects that are detected on a document page.
KEY_VALUE_SET - Stores the KEY and VALUE Block
objects for linked text that's detected on a document page. Use the EntityType
field to determine if a KEY_VALUE_SET object is a KEY Block
object or a VALUE Block
object.
WORD - A word that's detected on a document page. A word is one or more ISO basic Latin script characters that aren't separated by spaces.
LINE - A string of tab-delimited, contiguous words that are detected on a document page.
TABLE - A table that's detected on a document page. A table is grid-based information with two or more rows or columns, with a cell span of one row and one column each.
TABLE_TITLE - The title of a table. A title is typically a line of text above or below a table, or embedded as the first row of a table.
TABLE_FOOTER - The footer associated with a table. A footer is typically a line or lines of text below a table or embedded as the last row of a table.
CELL - A cell within a detected table. The cell is the parent of the block that contains the text in the cell.
MERGED_CELL - A cell in a table whose content spans more than one row or column. The Relationships
array for this cell contain data from individual cells.
SELECTION_ELEMENT - A selection element such as an option button (radio button) or a check box that's detected on a document page. Use the value of SelectionStatus
to determine the status of the selection element.
SIGNATURE - The location and confidene score of a signature detected on a document page. Can be returned as part of a Key-Value pair or a detected cell.
QUERY - A question asked during the call of AnalyzeDocument. Contains an alias and an ID that attaches it to its answer.
QUERY_RESULT - A response to a question asked during the call of analyze document. Comes with an alias and ID for ease of locating in a response. Also contains location and confidence score.
The type of text item that's recognized. In operations for text detection, the following types are returned:
PAGE - Contains a list of the LINE Block
objects that are detected on a document page.
WORD - A word detected on a document page. A word is one or more ISO basic Latin script characters that aren't separated by spaces.
LINE - A string of tab-delimited, contiguous words that are detected on a document page.
In text analysis operations, the following types are returned:
PAGE - Contains a list of child Block
objects that are detected on a document page.
KEY_VALUE_SET - Stores the KEY and VALUE Block
objects for linked text that's detected on a document page. Use the EntityType
field to determine if a KEY_VALUE_SET object is a KEY Block
object or a VALUE Block
object.
WORD - A word that's detected on a document page. A word is one or more ISO basic Latin script characters that aren't separated by spaces.
LINE - A string of tab-delimited, contiguous words that are detected on a document page.
TABLE - A table that's detected on a document page. A table is grid-based information with two or more rows or columns, with a cell span of one row and one column each.
TABLE_TITLE - The title of a table. A title is typically a line of text above or below a table, or embedded as the first row of a table.
TABLE_FOOTER - The footer associated with a table. A footer is typically a line or lines of text below a table or embedded as the last row of a table.
CELL - A cell within a detected table. The cell is the parent of the block that contains the text in the cell.
MERGED_CELL - A cell in a table whose content spans more than one row or column. The Relationships
array for this cell contain data from individual cells.
SELECTION_ELEMENT - A selection element such as an option button (radio button) or a check box that's detected on a document page. Use the value of SelectionStatus
to determine the status of the selection element.
SIGNATURE - The location and confidence score of a signature detected on a document page. Can be returned as part of a Key-Value pair or a detected cell.
QUERY - A question asked during the call of AnalyzeDocument. Contains an alias and an ID that attaches it to its answer.
QUERY_RESULT - A response to a question asked during the call of analyze document. Comes with an alias and ID for ease of locating in a response. Also contains location and confidence score.
The page on which a block was detected. Page
is returned by synchronous and asynchronous operations. Page values greater than 1 are only returned for multipage documents that are in PDF or TIFF format. A scanned image (JPEG/PNG) provided to an asynchronous operation, even if it contains multiple document pages, is considered a single-page document. This means that for scanned images the value of Page
is always 1. Synchronous operations will also return a Page
value of 1 because every input document is considered to be a single-page document.
The page on which a block was detected. Page
is returned by synchronous and asynchronous operations. Page values greater than 1 are only returned for multipage documents that are in PDF or TIFF format. A scanned image (JPEG/PNG) provided to an asynchronous operation, even if it contains multiple document pages, is considered a single-page document. This means that for scanned images the value of Page
is always 1.
>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}},{}],443:[function(e,t,r){var a={}.toString;t.exports=Array.isArray||function(e){return"[object Array]"==a.call(e)}},{}],444:[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)}},{}],448:[function(e,t,r){"use strict";function a(e,t){if(e.map)return e.map(t);for(var r=[],a=0;a >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}},{}],443:[function(e,t,r){var a={}.toString;t.exports=Array.isArray||function(e){return"[object Array]"==a.call(e)}},{}],444:[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)}},{}],448:[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,I=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<=I?C:m>=I+k?k:m-I,!(l=t&&bf&&i("overflow"),b==t){for(l=r,d=T;y=d<=o?C:d>=o+k?k:d-o,!(l=0&&delete e.httpRequest.headers["Content-Length"]}function i(e){var t=new l,r=e.service.api.operations[e.operation].input;if(r.payload){var a={},i=r.members[r.payload];a=e.params[r.payload],"structure"===i.type?(e.httpRequest.body=t.build(a||{},i),s(e)):void 0!==a&&(e.httpRequest.body=a,("binary"===i.type||i.isStreaming)&&s(e,!0))}else e.httpRequest.body=t.build(e.params,r),s(e)}function s(e,t){if(!e.httpRequest.headers["Content-Type"]){var r=t?"binary/octet-stream":"application/json";e.httpRequest.headers["Content-Type"]=r}}function o(e){m.buildRequest(e),y.indexOf(e.httpRequest.method)<0&&i(e)}function n(e){c.extractError(e)}function u(e){m.extractData(e);var t,r=e.request,a=r.service.api.operations[r.operation],i=r.service.api.operations[r.operation].output||{};a.hasEventOutput;if(i.payload){var s=i.members[i.payload],o=e.httpResponse.body;if(s.isEventStream)t=new d,e.data[payload]=p.createEventStream(2===AWS.HttpClient.streamsApiVersion?e.httpResponse.stream:o,t,s);else if("structure"===s.type||"list"===s.type){var t=new d;e.data[i.payload]=t.parse(o,s)}else"binary"===s.type||s.isStreaming?e.data[i.payload]=o:e.data[i.payload]=s.toType(o)}else{var n=e.data;c.extractData(e),e.data=p.merge(n,e.data)}}var p=e("../util"),m=e("./rest"),c=e("./json"),l=e("../json/builder"),d=e("../json/parser"),y=["GET","HEAD","DELETE"];t.exports={buildRequest:o,extractError:n,extractData:u,unsetContentLength:a}},{"../json/builder":374,"../json/parser":375,"../util":428,"./json":386,"./rest":388}],390:[function(e,t,r){function a(e){var t=e.service.api.operations[e.operation].input,r=new n.XML.Builder,a=e.params,i=t.payload;if(i){var s=t.members[i];if(void 0===(a=a[i]))return;if("structure"===s.type){var o=s.name;e.httpRequest.body=r.toXML(a,s,o,!0)}else e.httpRequest.body=a}else e.httpRequest.body=r.toXML(a,t,t.name||t.shape||u.string.upperFirst(e.operation)+"Request")}function i(e){p.buildRequest(e),["GET","HEAD"].indexOf(e.httpRequest.method)<0&&a(e)}function s(e){p.extractError(e);var t;try{t=(new n.XML.Parser).parse(e.httpResponse.body.toString())}catch(r){t={Code:e.httpResponse.statusCode,Message:e.httpResponse.statusMessage}}t.Errors&&(t=t.Errors),t.Error&&(t=t.Error),t.Code?e.error=u.error(new Error,{code:t.Code,message:t.Message}):e.error=u.error(new Error,{code:e.httpResponse.statusCode,message:null})}function o(e){p.extractData(e);var t,r=e.request,a=e.httpResponse.body,i=r.service.api.operations[r.operation],s=i.output,o=(i.hasEventOutput,s.payload);if(o){var m=s.members[o];m.isEventStream?(t=new n.XML.Parser,e.data[o]=u.createEventStream(2===n.HttpClient.streamsApiVersion?e.httpResponse.stream:e.httpResponse.body,t,m)):"structure"===m.type?(t=new n.XML.Parser,e.data[o]=t.parse(a.toString(),m)):"binary"===m.type||m.isStreaming?e.data[o]=a:e.data[o]=m.toType(a)}else if(a.length>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":350,"../util":428,"./rest":388}],391:[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":428}],392:[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":350}],393:[function(e,t,r){t.exports={now:function(){return"undefined"!=typeof performance&&"function"==typeof performance.now?performance.now():Date.now()}}},{}],394:[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}},{}],395:[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],[t,"internal-*"],["*","*"]].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=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|e}function b(e){return+e!=e&&(e=0),s.alloc(+e)}function S(e,t){if(s.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var r=e.length;if(0===r)return 0;for(var a=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return K(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return H(e).length;default:if(a)return K(e).length;t=(""+t).toLowerCase(),a=!0}}function g(e,t,r){var a=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if(r>>>=0,t>>>=0,r<=t)return"";for(e||(e="utf8");;)switch(e){case"hex":return E(this,t,r);case"utf8":case"utf-8":return v(this,t,r);case"ascii":return x(this,t,r);case"latin1":case"binary":return q(this,t,r);case"base64":return D(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return M(this,t,r);default:if(a)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),a=!0}}function h(e,t,r){var a=e[t];e[t]=e[r],e[r]=a}function I(e,t,r,a,i){if(0===e.length)return-1;if("string"==typeof r?(a=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,isNaN(r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof t&&(t=s.from(t,a)),s.isBuffer(t))return 0===t.length?-1:N(e,t,r,a,i);if("number"==typeof t)return t&=255,s.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):N(e,[t],r,a,i);throw new TypeError("val must be string, number or Buffer")}function N(e,t,r,a,i){function s(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}var o=1,n=e.length,u=t.length;if(void 0!==a&&("ucs2"===(a=String(a).toLowerCase())||"ucs-2"===a||"utf16le"===a||"utf-16le"===a)){if(e.length<2||t.length<2)return-1;o=2,n/=2,u/=2,r/=2}var p;if(i){var m=-1;for(p=r;p>>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 W(e){for(var t=[],r=0;r=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,I=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<=I?C:m>=I+k?k:m-I,!(l=t&&bf&&i("overflow"),b==t){for(l=r,d=T;y=d<=o?C:d>=o+k?k:d-o,!(l