diff --git a/.changes/1.32.5.json b/.changes/1.32.5.json new file mode 100644 index 0000000000..007118e680 --- /dev/null +++ b/.changes/1.32.5.json @@ -0,0 +1,42 @@ +[ + { + "category": "``cloudfront``", + "description": "This release adds support for CloudFront KeyValueStore, a globally managed key value datastore associated with CloudFront Functions.", + "type": "api-change" + }, + { + "category": "``cloudfront-keyvaluestore``", + "description": "This release adds support for CloudFront KeyValueStore, a globally managed key value datastore associated with CloudFront Functions.", + "type": "api-change" + }, + { + "category": "``ec2``", + "description": "Documentation updates for Amazon EC2.", + "type": "api-change" + }, + { + "category": "``endpoint-rules``", + "description": "Update endpoint-rules client to latest version", + "type": "api-change" + }, + { + "category": "``inspector-scan``", + "description": "This release adds support for the new Amazon Inspector Scan API. The new Inspector Scan API can synchronously scan SBOMs adhering to the CycloneDX v1.5 format.", + "type": "api-change" + }, + { + "category": "``iotsitewise``", + "description": "Adds 1/ user-defined unique identifier for asset and model metadata, 2/ asset model components, and 3/ query API for asset metadata and telemetry data. Supports 4/ multi variate anomaly detection using Amazon Lookout for Equipment, 5/ warm storage tier, and 6/ buffered ingestion of time series data.", + "type": "api-change" + }, + { + "category": "``iottwinmaker``", + "description": "This release adds following support. 1. New APIs for metadata bulk operations. 2. Modify the component type API to support composite component types - nesting component types within one another. 3. New list APIs for components and properties. 4. Support the larger scope digital twin modeling.", + "type": "api-change" + }, + { + "category": "``s3``", + "description": "Add support for automatic date based partitioning in S3 Server Access Logs.", + "type": "api-change" + } +] \ No newline at end of file diff --git a/CHANGELOG.rst b/CHANGELOG.rst index bf9cbb538b..8af84fb29a 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -2,6 +2,19 @@ CHANGELOG ========= +1.32.5 +====== + +* api-change:``cloudfront``: This release adds support for CloudFront KeyValueStore, a globally managed key value datastore associated with CloudFront Functions. +* api-change:``cloudfront-keyvaluestore``: This release adds support for CloudFront KeyValueStore, a globally managed key value datastore associated with CloudFront Functions. +* api-change:``ec2``: Documentation updates for Amazon EC2. +* api-change:``endpoint-rules``: Update endpoint-rules client to latest version +* api-change:``inspector-scan``: This release adds support for the new Amazon Inspector Scan API. The new Inspector Scan API can synchronously scan SBOMs adhering to the CycloneDX v1.5 format. +* api-change:``iotsitewise``: Adds 1/ user-defined unique identifier for asset and model metadata, 2/ asset model components, and 3/ query API for asset metadata and telemetry data. Supports 4/ multi variate anomaly detection using Amazon Lookout for Equipment, 5/ warm storage tier, and 6/ buffered ingestion of time series data. +* api-change:``iottwinmaker``: This release adds following support. 1. New APIs for metadata bulk operations. 2. Modify the component type API to support composite component types - nesting component types within one another. 3. New list APIs for components and properties. 4. Support the larger scope digital twin modeling. +* api-change:``s3``: Add support for automatic date based partitioning in S3 Server Access Logs. + + 1.32.4 ====== diff --git a/botocore/__init__.py b/botocore/__init__.py index 3e3392a320..6f241347c4 100644 --- a/botocore/__init__.py +++ b/botocore/__init__.py @@ -16,7 +16,7 @@ import os import re -__version__ = '1.32.4' +__version__ = '1.32.5' class NullHandler(logging.Handler): diff --git a/botocore/data/cloudfront-keyvaluestore/2022-07-26/endpoint-rule-set-1.json b/botocore/data/cloudfront-keyvaluestore/2022-07-26/endpoint-rule-set-1.json new file mode 100644 index 0000000000..1994b7d23e --- /dev/null +++ b/botocore/data/cloudfront-keyvaluestore/2022-07-26/endpoint-rule-set-1.json @@ -0,0 +1,449 @@ +{ + "version": "1.0", + "parameters": { + "KvsARN": { + "required": false, + "documentation": "The ARN of the Key Value Store", + "type": "String" + }, + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "KvsARN" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.parseArn", + "argv": [ + { + "ref": "KvsARN" + } + ], + "assign": "parsedArn" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "parsedArn" + }, + "service" + ] + }, + "cloudfront" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "parsedArn" + }, + "region" + ] + }, + "" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "parsedArn" + }, + "resourceId[0]" + ], + "assign": "arnType" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "arnType" + }, + "" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "arnType" + }, + "key-value-store" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "parsedArn" + }, + "partition" + ] + }, + "aws" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "partitionResult" + }, + "name" + ] + }, + "{parsedArn#partition}" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{parsedArn#accountId}.{url#authority}{url#path}", + "properties": { + "authSchemes": [ + { + "name": "sigv4a", + "signingName": "cloudfront-keyvaluestore", + "signingRegionSet": [ + "*" + ] + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Provided endpoint is not a valid URL", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{parsedArn#accountId}.cloudfront-kvs.global.api.aws", + "properties": { + "authSchemes": [ + { + "name": "sigv4a", + "signingName": "cloudfront-keyvaluestore", + "signingRegionSet": [ + "*" + ] + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Client was configured for partition `{partitionResult#name}` but Kvs ARN has `{parsedArn#partition}`", + "type": "error" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{parsedArn#accountId}.{url#authority}{url#path}", + "properties": { + "authSchemes": [ + { + "name": "sigv4a", + "signingName": "cloudfront-keyvaluestore", + "signingRegionSet": [ + "*" + ] + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Provided endpoint is not a valid URL", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{parsedArn#accountId}.cloudfront-kvs.global.api.aws", + "properties": { + "authSchemes": [ + { + "name": "sigv4a", + "signingName": "cloudfront-keyvaluestore", + "signingRegionSet": [ + "*" + ] + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "CloudFront-KeyValueStore is not supported in partition `{parsedArn#partition}`", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "ARN resource type is invalid. Expected `key-value-store`, found: `{arnType}`", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "No resource type found in the KVS ARN. Resource type must be `key-value-store`.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "No resource type found in the KVS ARN. Resource type must be `key-value-store`.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Provided ARN must be a global resource ARN. Found: `{parsedArn#region}`", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Provided ARN is not a valid CloudFront Service ARN. Found: `{parsedArn#service}`", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "KVS ARN must be a valid ARN", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "KVS ARN must be provided to use this service", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: FIPS is not supported with CloudFront-KeyValueStore.", + "type": "error" + } + ] +} \ No newline at end of file diff --git a/botocore/data/cloudfront-keyvaluestore/2022-07-26/paginators-1.json b/botocore/data/cloudfront-keyvaluestore/2022-07-26/paginators-1.json new file mode 100644 index 0000000000..8fda57a3e0 --- /dev/null +++ b/botocore/data/cloudfront-keyvaluestore/2022-07-26/paginators-1.json @@ -0,0 +1,10 @@ +{ + "pagination": { + "ListKeys": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "Items" + } + } +} diff --git a/botocore/data/cloudfront-keyvaluestore/2022-07-26/service-2.json b/botocore/data/cloudfront-keyvaluestore/2022-07-26/service-2.json new file mode 100644 index 0000000000..14a63fed66 --- /dev/null +++ b/botocore/data/cloudfront-keyvaluestore/2022-07-26/service-2.json @@ -0,0 +1,600 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2022-07-26", + "endpointPrefix":"cloudfront-keyvaluestore", + "jsonVersion":"1.1", + "protocol":"rest-json", + "serviceFullName":"Amazon CloudFront KeyValueStore", + "serviceId":"CloudFront KeyValueStore", + "signatureVersion":"v4", + "signingName":"cloudfront-keyvaluestore", + "uid":"cloudfront-keyvaluestore-2022-07-26" + }, + "operations":{ + "DeleteKey":{ + "name":"DeleteKey", + "http":{ + "method":"DELETE", + "requestUri":"/key-value-stores/{KvsARN}/keys/{Key}", + "responseCode":200 + }, + "input":{"shape":"DeleteKeyRequest"}, + "output":{"shape":"DeleteKeyResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ], + "documentation":"
Deletes the key value pair specified by the key.
", + "idempotent":true + }, + "DescribeKeyValueStore":{ + "name":"DescribeKeyValueStore", + "http":{ + "method":"GET", + "requestUri":"/key-value-stores/{KvsARN}", + "responseCode":200 + }, + "input":{"shape":"DescribeKeyValueStoreRequest"}, + "output":{"shape":"DescribeKeyValueStoreResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ], + "documentation":"Returns metadata information about Key Value Store.
" + }, + "GetKey":{ + "name":"GetKey", + "http":{ + "method":"GET", + "requestUri":"/key-value-stores/{KvsARN}/keys/{Key}", + "responseCode":200 + }, + "input":{"shape":"GetKeyRequest"}, + "output":{"shape":"GetKeyResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ], + "documentation":"Returns a key value pair.
" + }, + "ListKeys":{ + "name":"ListKeys", + "http":{ + "method":"GET", + "requestUri":"/key-value-stores/{KvsARN}/keys", + "responseCode":200 + }, + "input":{"shape":"ListKeysRequest"}, + "output":{"shape":"ListKeysResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ], + "documentation":"Returns a list of key value pairs.
" + }, + "PutKey":{ + "name":"PutKey", + "http":{ + "method":"PUT", + "requestUri":"/key-value-stores/{KvsARN}/keys/{Key}", + "responseCode":200 + }, + "input":{"shape":"PutKeyRequest"}, + "output":{"shape":"PutKeyResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ], + "documentation":"Creates a new key value pair or replaces the value of an existing key.
", + "idempotent":true + }, + "UpdateKeys":{ + "name":"UpdateKeys", + "http":{ + "method":"POST", + "requestUri":"/key-value-stores/{KvsARN}/keys", + "responseCode":200 + }, + "input":{"shape":"UpdateKeysRequest"}, + "output":{"shape":"UpdateKeysResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ], + "documentation":"Puts or Deletes multiple key value pairs in a single, all-or-nothing operation.
", + "idempotent":true + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + }, + "documentation":"Access denied.
", + "error":{ + "httpStatusCode":403, + "senderFault":true + }, + "exception":true + }, + "ConflictException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + }, + "documentation":"Resource is not in expected state.
", + "error":{ + "httpStatusCode":409, + "senderFault":true + }, + "exception":true + }, + "DeleteKeyRequest":{ + "type":"structure", + "required":[ + "KvsARN", + "Key", + "IfMatch" + ], + "members":{ + "KvsARN":{ + "shape":"KvsARN", + "documentation":"The Amazon Resource Name (ARN) of the Key Value Store.
", + "contextParam":{"name":"KvsARN"}, + "location":"uri", + "locationName":"KvsARN" + }, + "Key":{ + "shape":"Key", + "documentation":"The key to delete.
", + "location":"uri", + "locationName":"Key" + }, + "IfMatch":{ + "shape":"Etag", + "documentation":"The current version (ETag) of the Key Value Store that you are deleting keys from, which you can get using DescribeKeyValueStore.
", + "location":"header", + "locationName":"If-Match" + } + } + }, + "DeleteKeyRequestListItem":{ + "type":"structure", + "required":["Key"], + "members":{ + "Key":{ + "shape":"Key", + "documentation":"The key of the key value pair to be deleted.
" + } + }, + "documentation":"List item for keys to delete.
" + }, + "DeleteKeyRequestsList":{ + "type":"list", + "member":{"shape":"DeleteKeyRequestListItem"} + }, + "DeleteKeyResponse":{ + "type":"structure", + "required":[ + "ItemCount", + "TotalSizeInBytes", + "ETag" + ], + "members":{ + "ItemCount":{ + "shape":"Integer", + "documentation":"Number of key value pairs in the Key Value Store after the successful delete.
" + }, + "TotalSizeInBytes":{ + "shape":"Long", + "documentation":"Total size of the Key Value Store after the successful delete, in bytes.
" + }, + "ETag":{ + "shape":"Etag", + "documentation":"The current version identifier of the Key Value Store after the successful delete.
", + "location":"header", + "locationName":"ETag" + } + }, + "documentation":"Metadata information about a Key Value Store.
" + }, + "DescribeKeyValueStoreRequest":{ + "type":"structure", + "required":["KvsARN"], + "members":{ + "KvsARN":{ + "shape":"KvsARN", + "documentation":"The Amazon Resource Name (ARN) of the Key Value Store.
", + "contextParam":{"name":"KvsARN"}, + "location":"uri", + "locationName":"KvsARN" + } + } + }, + "DescribeKeyValueStoreResponse":{ + "type":"structure", + "required":[ + "ItemCount", + "TotalSizeInBytes", + "KvsARN", + "Created", + "ETag" + ], + "members":{ + "ItemCount":{ + "shape":"Integer", + "documentation":"Number of key value pairs in the Key Value Store.
" + }, + "TotalSizeInBytes":{ + "shape":"Long", + "documentation":"Total size of the Key Value Store in bytes.
" + }, + "KvsARN":{ + "shape":"KvsARN", + "documentation":"The Amazon Resource Name (ARN) of the Key Value Store.
" + }, + "Created":{ + "shape":"Timestamp", + "documentation":"Date and time when the Key Value Store was created.
" + }, + "ETag":{ + "shape":"Etag", + "documentation":"The version identifier for the current version of the Key Value Store.
", + "location":"header", + "locationName":"ETag" + }, + "LastModified":{ + "shape":"Timestamp", + "documentation":"Date and time when the key value pairs in the Key Value Store was last modified.
" + } + }, + "documentation":"Metadata information about a Key Value Store.
" + }, + "Etag":{"type":"string"}, + "GetKeyRequest":{ + "type":"structure", + "required":[ + "KvsARN", + "Key" + ], + "members":{ + "KvsARN":{ + "shape":"KvsARN", + "documentation":"The Amazon Resource Name (ARN) of the Key Value Store.
", + "contextParam":{"name":"KvsARN"}, + "location":"uri", + "locationName":"KvsARN" + }, + "Key":{ + "shape":"Key", + "documentation":"The key to get.
", + "location":"uri", + "locationName":"Key" + } + } + }, + "GetKeyResponse":{ + "type":"structure", + "required":[ + "Key", + "Value", + "ItemCount", + "TotalSizeInBytes" + ], + "members":{ + "Key":{ + "shape":"Key", + "documentation":"The key of the key value pair.
" + }, + "Value":{ + "shape":"Value", + "documentation":"The value of the key value pair.
" + }, + "ItemCount":{ + "shape":"Integer", + "documentation":"Number of key value pairs in the Key Value Store.
" + }, + "TotalSizeInBytes":{ + "shape":"Long", + "documentation":"Total size of the Key Value Store in bytes.
" + } + }, + "documentation":"A key value pair.
" + }, + "Integer":{ + "type":"integer", + "box":true + }, + "InternalServerException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + }, + "documentation":"Internal server error.
", + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true + }, + "Key":{ + "type":"string", + "max":1024, + "min":1 + }, + "KvsARN":{ + "type":"string", + "max":2048, + "min":1 + }, + "ListKeysRequest":{ + "type":"structure", + "required":["KvsARN"], + "members":{ + "KvsARN":{ + "shape":"KvsARN", + "documentation":"The Amazon Resource Name (ARN) of the Key Value Store.
", + "contextParam":{"name":"KvsARN"}, + "location":"uri", + "locationName":"KvsARN" + }, + "NextToken":{ + "shape":"String", + "documentation":"If nextToken is returned in the response, there are more results available. Make the next call using the returned token to retrieve the next page.
", + "location":"querystring", + "locationName":"NextToken" + }, + "MaxResults":{ + "shape":"ListKeysRequestMaxResultsInteger", + "documentation":"Maximum number of results that are returned per call. The default is 10 and maximum allowed page is 50.
", + "location":"querystring", + "locationName":"MaxResults" + } + } + }, + "ListKeysRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":50, + "min":1 + }, + "ListKeysResponse":{ + "type":"structure", + "members":{ + "NextToken":{ + "shape":"String", + "documentation":"If nextToken is returned in the response, there are more results available. Make the next call using the returned token to retrieve the next page.
" + }, + "Items":{ + "shape":"ListKeysResponseList", + "documentation":"Key value pairs
" + } + } + }, + "ListKeysResponseList":{ + "type":"list", + "member":{"shape":"ListKeysResponseListItem"} + }, + "ListKeysResponseListItem":{ + "type":"structure", + "required":[ + "Key", + "Value" + ], + "members":{ + "Key":{ + "shape":"Key", + "documentation":"The key of the key value pair.
" + }, + "Value":{ + "shape":"Value", + "documentation":"The value of the key value pair.
" + } + }, + "documentation":"A key value pair.
" + }, + "Long":{ + "type":"long", + "box":true + }, + "PutKeyRequest":{ + "type":"structure", + "required":[ + "Key", + "Value", + "KvsARN", + "IfMatch" + ], + "members":{ + "Key":{ + "shape":"Key", + "documentation":"The key to put.
", + "location":"uri", + "locationName":"Key" + }, + "Value":{ + "shape":"Value", + "documentation":"The value to put.
" + }, + "KvsARN":{ + "shape":"KvsARN", + "documentation":"The Amazon Resource Name (ARN) of the Key Value Store.
", + "contextParam":{"name":"KvsARN"}, + "location":"uri", + "locationName":"KvsARN" + }, + "IfMatch":{ + "shape":"Etag", + "documentation":"The current version (ETag) of the Key Value Store that you are putting keys into, which you can get using DescribeKeyValueStore.
", + "location":"header", + "locationName":"If-Match" + } + }, + "documentation":"A key value pair.
" + }, + "PutKeyRequestListItem":{ + "type":"structure", + "required":[ + "Key", + "Value" + ], + "members":{ + "Key":{ + "shape":"Key", + "documentation":"The key of the key value pair list item to put.
" + }, + "Value":{ + "shape":"Value", + "documentation":"The value for the key value pair to put.
" + } + }, + "documentation":"List item for key value pair to put.
" + }, + "PutKeyRequestsList":{ + "type":"list", + "member":{"shape":"PutKeyRequestListItem"} + }, + "PutKeyResponse":{ + "type":"structure", + "required":[ + "ItemCount", + "TotalSizeInBytes", + "ETag" + ], + "members":{ + "ItemCount":{ + "shape":"Integer", + "documentation":"Number of key value pairs in the Key Value Store after the successful put.
" + }, + "TotalSizeInBytes":{ + "shape":"Long", + "documentation":"Total size of the Key Value Store after the successful put, in bytes.
" + }, + "ETag":{ + "shape":"Etag", + "documentation":"The current version identifier of the Key Value Store after the successful put.
", + "location":"header", + "locationName":"ETag" + } + }, + "documentation":"Metadata information about a Key Value Store.
" + }, + "ResourceNotFoundException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + }, + "documentation":"Resource was not found.
", + "error":{ + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + }, + "documentation":"Limit exceeded.
", + "error":{ + "httpStatusCode":402, + "senderFault":true + }, + "exception":true + }, + "String":{"type":"string"}, + "Timestamp":{"type":"timestamp"}, + "UpdateKeysRequest":{ + "type":"structure", + "required":[ + "KvsARN", + "IfMatch" + ], + "members":{ + "KvsARN":{ + "shape":"KvsARN", + "documentation":"The Amazon Resource Name (ARN) of the Key Value Store.
", + "contextParam":{"name":"KvsARN"}, + "location":"uri", + "locationName":"KvsARN" + }, + "IfMatch":{ + "shape":"Etag", + "documentation":"The current version (ETag) of the Key Value Store that you are updating keys of, which you can get using DescribeKeyValueStore.
", + "location":"header", + "locationName":"If-Match" + }, + "Puts":{ + "shape":"PutKeyRequestsList", + "documentation":"List of key value pairs to put.
" + }, + "Deletes":{ + "shape":"DeleteKeyRequestsList", + "documentation":"List of keys to delete.
" + } + } + }, + "UpdateKeysResponse":{ + "type":"structure", + "required":[ + "ItemCount", + "TotalSizeInBytes", + "ETag" + ], + "members":{ + "ItemCount":{ + "shape":"Integer", + "documentation":"Number of key value pairs in the Key Value Store after the successful update.
" + }, + "TotalSizeInBytes":{ + "shape":"Long", + "documentation":"Total size of the Key Value Store after the successful update, in bytes.
" + }, + "ETag":{ + "shape":"Etag", + "documentation":"The current version identifier of the Key Value Store after the successful update.
", + "location":"header", + "locationName":"ETag" + } + }, + "documentation":"Metadata information about a Key Value Store.
" + }, + "ValidationException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + }, + "documentation":"Validation failed.
", + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "Value":{ + "type":"string", + "sensitive":true + } + }, + "documentation":"Amazon CloudFront KeyValueStore Service to View and Update Data in a KVS Resource
" +} diff --git a/botocore/data/cloudfront/2020-05-31/endpoint-rule-set-1.json b/botocore/data/cloudfront/2020-05-31/endpoint-rule-set-1.json index cbd106d141..d8511d0b90 100644 --- a/botocore/data/cloudfront/2020-05-31/endpoint-rule-set-1.json +++ b/botocore/data/cloudfront/2020-05-31/endpoint-rule-set-1.json @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -286,7 +284,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -321,7 +318,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -332,14 +328,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -353,14 +351,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -369,11 +365,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -384,14 +380,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -405,7 +403,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -425,7 +422,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -436,14 +432,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -454,9 +452,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff --git a/botocore/data/cloudfront/2020-05-31/paginators-1.json b/botocore/data/cloudfront/2020-05-31/paginators-1.json index 51fbb907fa..a54900b8c4 100644 --- a/botocore/data/cloudfront/2020-05-31/paginators-1.json +++ b/botocore/data/cloudfront/2020-05-31/paginators-1.json @@ -27,6 +27,12 @@ "limit_key": "MaxItems", "more_results": "StreamingDistributionList.IsTruncated", "result_key": "StreamingDistributionList.Items" + }, + "ListKeyValueStores": { + "input_token": "Marker", + "limit_key": "MaxItems", + "output_token": "KeyValueStoreList.NextMarker", + "result_key": "KeyValueStoreList.Items" } } } diff --git a/botocore/data/cloudfront/2020-05-31/service-2.json b/botocore/data/cloudfront/2020-05-31/service-2.json index e2300702ae..83ddcdfaea 100644 --- a/botocore/data/cloudfront/2020-05-31/service-2.json +++ b/botocore/data/cloudfront/2020-05-31/service-2.json @@ -426,6 +426,28 @@ ], "documentation":"Creates a key group that you can use with CloudFront signed URLs and signed cookies.
To create a key group, you must specify at least one public key for the key group. After you create a key group, you can reference it from one or more cache behaviors. When you reference a key group in a cache behavior, CloudFront requires signed URLs or signed cookies for all requests that match the cache behavior. The URLs or cookies must be signed with a private key whose corresponding public key is in the key group. The signed URL or cookie contains information about which public key CloudFront should use to verify the signature. For more information, see Serving private content in the Amazon CloudFront Developer Guide.
" }, + "CreateKeyValueStore":{ + "name":"CreateKeyValueStore2020_05_31", + "http":{ + "method":"POST", + "requestUri":"/2020-05-31/key-value-store/", + "responseCode":201 + }, + "input":{ + "shape":"CreateKeyValueStoreRequest", + "locationName":"CreateKeyValueStoreRequest", + "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2020-05-31/"} + }, + "output":{"shape":"CreateKeyValueStoreResult"}, + "errors":[ + {"shape":"AccessDenied"}, + {"shape":"EntityLimitExceeded"}, + {"shape":"EntityAlreadyExists"}, + {"shape":"EntitySizeLimitExceeded"}, + {"shape":"InvalidArgument"} + ], + "documentation":"Specifies the Key Value Store resource to add to your account. In your account, the Key Value Store names must be unique. You can also import Key Value Store data in JSON format from an S3 bucket by providing a valid ImportSource
that you own.
Deletes a key group.
You cannot delete a key group that is referenced in a cache behavior. First update your distributions to remove the key group from all cache behaviors, then delete the key group.
To delete a key group, you must provide the key group's identifier and version. To get these values, use ListKeyGroups
followed by GetKeyGroup
or GetKeyGroupConfig
.
Specifies the Key Value Store to delete.
", + "idempotent":true + }, "DeleteMonitoringSubscription":{ "name":"DeleteMonitoringSubscription2020_05_31", "http":{ @@ -864,6 +904,21 @@ ], "documentation":"Gets configuration information and metadata about a CloudFront function, but not the function's code. To get a function's code, use GetFunction
.
To get configuration information and metadata about a function, you must provide the function's name and stage. To get these values, you can use ListFunctions
.
Specifies the Key Value Store and its configuration.
" + }, "GetCachePolicy":{ "name":"GetCachePolicy2020_05_31", "http":{ @@ -1491,6 +1546,20 @@ ], "documentation":"Gets a list of key groups.
You can optionally specify the maximum number of items to receive in the response. If the total number of items in the list exceeds the maximum that you specify, or the default maximum, the response is paginated. To get the next page of items, send a subsequent request that specifies the NextMarker
value from the current response as the Marker
value in the subsequent request.
Specifies the Key Value Stores to list.
" + }, "ListOriginAccessControls":{ "name":"ListOriginAccessControls2020_05_31", "http":{ @@ -1961,6 +2030,28 @@ ], "documentation":"Updates a key group.
When you update a key group, all the fields are updated with the values provided in the request. You cannot update some fields independent of others. To update a key group:
Get the current key group with GetKeyGroup
or GetKeyGroupConfig
.
Locally modify the fields in the key group that you want to update. For example, add or remove public key IDs.
Call UpdateKeyGroup
with the entire key group object, including the fields that you modified and those that you didn't.
Specifies the Key Value Store to update.
", + "idempotent":true + }, "UpdateOriginAccessControl":{ "name":"UpdateOriginAccessControl2020_05_31", "http":{ @@ -2615,6 +2706,15 @@ "error":{"httpStatusCode":400}, "exception":true }, + "CannotDeleteEntityWhileInUse":{ + "type":"structure", + "members":{ + "Message":{"shape":"string"} + }, + "documentation":"The Key Value Store entity cannot be deleted while it is in use.
", + "error":{"httpStatusCode":409}, + "exception":true + }, "CertificateSource":{ "type":"string", "enum":[ @@ -3459,6 +3559,46 @@ }, "payload":"KeyGroup" }, + "CreateKeyValueStoreRequest":{ + "type":"structure", + "required":["Name"], + "members":{ + "Name":{ + "shape":"KeyValueStoreName", + "documentation":"The name of the Key Value Store. The maximum length of the name is 32 characters.
" + }, + "Comment":{ + "shape":"KeyValueStoreComment", + "documentation":"The comment of the Key Value Store.
" + }, + "ImportSource":{ + "shape":"ImportSource", + "documentation":"The S3 bucket that provides the source for the import. The source must be in a valid JSON format.
" + } + } + }, + "CreateKeyValueStoreResult":{ + "type":"structure", + "members":{ + "KeyValueStore":{ + "shape":"KeyValueStore", + "documentation":"The resulting Key Value Store.
" + }, + "ETag":{ + "shape":"string", + "documentation":"The ETag in the resulting Key Value Store.
", + "location":"header", + "locationName":"ETag" + }, + "Location":{ + "shape":"string", + "documentation":"The location of the resulting Key Value Store.
", + "location":"header", + "locationName":"Location" + } + }, + "payload":"KeyValueStore" + }, "CreateMonitoringSubscriptionRequest":{ "type":"structure", "required":[ @@ -4068,6 +4208,27 @@ } } }, + "DeleteKeyValueStoreRequest":{ + "type":"structure", + "required":[ + "IfMatch", + "Name" + ], + "members":{ + "Name":{ + "shape":"KeyValueStoreName", + "documentation":"The name of the Key Value Store.
", + "location":"uri", + "locationName":"Name" + }, + "IfMatch":{ + "shape":"string", + "documentation":"The Key Value Store to delete, if a match occurs.
", + "location":"header", + "locationName":"If-Match" + } + } + }, "DeleteMonitoringSubscriptionRequest":{ "type":"structure", "required":["DistributionId"], @@ -4223,6 +4384,34 @@ }, "payload":"FunctionSummary" }, + "DescribeKeyValueStoreRequest":{ + "type":"structure", + "required":["Name"], + "members":{ + "Name":{ + "shape":"KeyValueStoreName", + "documentation":"The name of the Key Value Store.
", + "location":"uri", + "locationName":"Name" + } + } + }, + "DescribeKeyValueStoreResult":{ + "type":"structure", + "members":{ + "KeyValueStore":{ + "shape":"KeyValueStore", + "documentation":"The resulting Key Value Store.
" + }, + "ETag":{ + "shape":"string", + "documentation":"The ETag of the resulting Key Value Store.
", + "location":"header", + "locationName":"ETag" + } + }, + "payload":"KeyValueStore" + }, "Distribution":{ "type":"structure", "required":[ @@ -4664,6 +4853,42 @@ "type":"list", "member":{"shape":"EndPoint"} }, + "EntityAlreadyExists":{ + "type":"structure", + "members":{ + "Message":{"shape":"string"} + }, + "documentation":"The Key Value Store entity already exists. You must provide a unique Key Value Store entity.
", + "error":{"httpStatusCode":409}, + "exception":true + }, + "EntityLimitExceeded":{ + "type":"structure", + "members":{ + "Message":{"shape":"string"} + }, + "documentation":"The Key Value Store entity limit has been exceeded.
", + "error":{"httpStatusCode":400}, + "exception":true + }, + "EntityNotFound":{ + "type":"structure", + "members":{ + "Message":{"shape":"string"} + }, + "documentation":"The Key Value Store entity was not found.
", + "error":{"httpStatusCode":404}, + "exception":true + }, + "EntitySizeLimitExceeded":{ + "type":"structure", + "members":{ + "Message":{"shape":"string"} + }, + "documentation":"The Key Value Store entity size limit was exceeded.
", + "error":{"httpStatusCode":413}, + "exception":true + }, "EventType":{ "type":"string", "enum":[ @@ -4761,7 +4986,7 @@ "documentation":"An array of field-level encryption items.
" } }, - "documentation":"List of field-level encrpytion configurations.
" + "documentation":"List of field-level encryption configurations.
" }, "FieldLevelEncryptionProfile":{ "type":"structure", @@ -4881,7 +5106,7 @@ }, "LastModifiedTime":{ "shape":"timestamp", - "documentation":"The time when the the field-level encryption profile summary was last updated.
" + "documentation":"The time when the field-level encryption profile summary was last updated.
" }, "Name":{ "shape":"string", @@ -5081,7 +5306,11 @@ }, "Runtime":{ "shape":"FunctionRuntime", - "documentation":"The function's runtime environment verion.
" + "documentation":"The function's runtime environment version.
" + }, + "KeyValueStoreAssociations":{ + "shape":"KeyValueStoreAssociations", + "documentation":"The configuration for the Key Value Store associations.
" } }, "documentation":"Contains configuration information about a CloudFront function.
" @@ -6123,6 +6352,28 @@ "error":{"httpStatusCode":400}, "exception":true }, + "ImportSource":{ + "type":"structure", + "required":[ + "SourceType", + "SourceARN" + ], + "members":{ + "SourceType":{ + "shape":"ImportSourceType", + "documentation":"The source type of the import source for the Key Value Store.
" + }, + "SourceARN":{ + "shape":"string", + "documentation":"The Amazon Resource Name (ARN) of the import source for the Key Value Store.
" + } + }, + "documentation":"The import source for the Key Value Store.
" + }, + "ImportSourceType":{ + "type":"string", + "enum":["S3"] + }, "InconsistentQuantities":{ "type":"structure", "members":{ @@ -6624,6 +6875,124 @@ }, "documentation":"A list of CloudFront key pair identifiers.
" }, + "KeyValueStore":{ + "type":"structure", + "required":[ + "Name", + "Id", + "Comment", + "ARN", + "LastModifiedTime" + ], + "members":{ + "Name":{ + "shape":"string", + "documentation":"The name of the Key Value Store.
" + }, + "Id":{ + "shape":"string", + "documentation":"The unique Id for the Key Value Store.
" + }, + "Comment":{ + "shape":"string", + "documentation":"A comment for the Key Value Store.
" + }, + "ARN":{ + "shape":"string", + "documentation":"The Amazon Resource Name (ARN) of the Key Value Store.
" + }, + "Status":{ + "shape":"string", + "documentation":"The status of the Key Value Store.
" + }, + "LastModifiedTime":{ + "shape":"timestamp", + "documentation":"The last-modified time of the Key Value Store.
" + } + }, + "documentation":"The Key Value Store. Use this to separate data from function code, allowing you to update data without having to publish a new version of a function. The Key Value Store holds keys and their corresponding values.
" + }, + "KeyValueStoreARN":{ + "type":"string", + "max":85, + "pattern":"arn:aws:cloudfront::[0-9]{12}:key-value-store\\/[0-9a-fA-F-]{36}$" + }, + "KeyValueStoreAssociation":{ + "type":"structure", + "required":["KeyValueStoreARN"], + "members":{ + "KeyValueStoreARN":{ + "shape":"KeyValueStoreARN", + "documentation":"The Amazon Resource Name (ARN) of the Key Value Store association.
" + } + }, + "documentation":"The Key Value Store association.
" + }, + "KeyValueStoreAssociationList":{ + "type":"list", + "member":{ + "shape":"KeyValueStoreAssociation", + "locationName":"KeyValueStoreAssociation" + } + }, + "KeyValueStoreAssociations":{ + "type":"structure", + "required":["Quantity"], + "members":{ + "Quantity":{ + "shape":"integer", + "documentation":"The quantity of Key Value Store associations.
" + }, + "Items":{ + "shape":"KeyValueStoreAssociationList", + "documentation":"The items of the Key Value Store association.
" + } + }, + "documentation":"The Key Value Store associations.
" + }, + "KeyValueStoreComment":{ + "type":"string", + "max":128 + }, + "KeyValueStoreList":{ + "type":"structure", + "required":[ + "MaxItems", + "Quantity" + ], + "members":{ + "NextMarker":{ + "shape":"string", + "documentation":"The next marker associated with the Key Value Store list.
" + }, + "MaxItems":{ + "shape":"integer", + "documentation":"The maximum number of items in the Key Value Store list.
" + }, + "Quantity":{ + "shape":"integer", + "documentation":"The quantity of the Key Value Store list.
" + }, + "Items":{ + "shape":"KeyValueStoreSummaryList", + "documentation":"The items of the Key Value Store list.
" + } + }, + "documentation":"The Key Value Store list.
" + }, + "KeyValueStoreName":{ + "type":"string", + "max":64, + "min":1, + "pattern":"^[a-zA-Z0-9-_]{1,64}$" + }, + "KeyValueStoreSummaryList":{ + "type":"list", + "member":{ + "shape":"KeyValueStore", + "locationName":"KeyValueStore" + } + }, "KinesisStreamConfig":{ "type":"structure", "required":[ @@ -7192,6 +7561,39 @@ }, "payload":"KeyGroupList" }, + "ListKeyValueStoresRequest":{ + "type":"structure", + "members":{ + "Marker":{ + "shape":"string", + "documentation":"The marker associated with the Key Value Stores list.
", + "location":"querystring", + "locationName":"Marker" + }, + "MaxItems":{ + "shape":"string", + "documentation":"The maximum number of items in the Key Value Stores list.
", + "location":"querystring", + "locationName":"MaxItems" + }, + "Status":{ + "shape":"string", + "documentation":"The status of the request for the Key Value Stores list.
", + "location":"querystring", + "locationName":"Status" + } + } + }, + "ListKeyValueStoresResult":{ + "type":"structure", + "members":{ + "KeyValueStoreList":{ + "shape":"KeyValueStoreList", + "documentation":"The resulting Key Value Stores list.
" + } + }, + "payload":"KeyValueStoreList" + }, "ListOriginAccessControlsRequest":{ "type":"structure", "members":{ @@ -7688,7 +8090,7 @@ "documentation":"The unique identifier of an origin access control for this origin.
For more information, see Restricting access to an Amazon S3 origin in the Amazon CloudFront Developer Guide.
" } }, - "documentation":"An origin.
An origin is the location where content is stored, and from which CloudFront gets content to serve to viewers. To specify an origin:
Use S3OriginConfig
to specify an Amazon S3 bucket that is not configured with static website hosting.
Use CustomOriginConfig
to specify all other kinds of origins, including:
An Amazon S3 bucket that is configured with static website hosting
An Elastic Load Balancing load balancer
An AWS Elemental MediaPackage endpoint
An AWS Elemental MediaStore container
Any other HTTP server, running on an Amazon EC2 instance or any other kind of host
For the current maximum number of origins that you can specify per distribution, see General Quotas on Web Distributions in the Amazon CloudFront Developer Guide (quotas were formerly referred to as limits).
" + "documentation":"An origin.
An origin is the location where content is stored, and from which CloudFront gets content to serve to viewers. To specify an origin:
Use S3OriginConfig
to specify an Amazon S3 bucket that is not configured with static website hosting.
Use CustomOriginConfig
to specify all other kinds of origins, including:
An Amazon S3 bucket that is configured with static website hosting
An Elastic Load Balancing load balancer
An Elemental MediaPackage endpoint
An Elemental MediaStore container
Any other HTTP server, running on an Amazon EC2 instance or any other kind of host
For the current maximum number of origins that you can specify per distribution, see General Quotas on Web Distributions in the Amazon CloudFront Developer Guide (quotas were formerly referred to as limits).
" }, "OriginAccessControl":{ "type":"structure", @@ -7901,7 +8303,7 @@ "documentation":"A complex type that contains information about the origins in an origin group.
" } }, - "documentation":"An origin group includes two origins (a primary origin and a second origin to failover to) and a failover criteria that you specify. You create an origin group to support origin failover in CloudFront. When you create or update a distribution, you can specifiy the origin group instead of a single origin, and CloudFront will failover from the primary origin to the second origin under the failover conditions that you've chosen.
" + "documentation":"An origin group includes two origins (a primary origin and a second origin to failover to) and a failover criteria that you specify. You create an origin group to support origin failover in CloudFront. When you create or update a distribution, you can specify the origin group instead of a single origin, and CloudFront will failover from the primary origin to the second origin under the failover conditions that you've chosen.
" }, "OriginGroupFailoverCriteria":{ "type":"structure", @@ -10795,6 +11197,48 @@ }, "payload":"KeyGroup" }, + "UpdateKeyValueStoreRequest":{ + "type":"structure", + "required":[ + "Name", + "Comment", + "IfMatch" + ], + "members":{ + "Name":{ + "shape":"KeyValueStoreName", + "documentation":"The name of the Key Value Store to update.
", + "location":"uri", + "locationName":"Name" + }, + "Comment":{ + "shape":"KeyValueStoreComment", + "documentation":"The comment of the Key Value Store to update.
" + }, + "IfMatch":{ + "shape":"string", + "documentation":"The Key Value Store to update, if a match occurs.
", + "location":"header", + "locationName":"If-Match" + } + } + }, + "UpdateKeyValueStoreResult":{ + "type":"structure", + "members":{ + "KeyValueStore":{ + "shape":"KeyValueStore", + "documentation":"The resulting Key Value Store to update.
" + }, + "ETag":{ + "shape":"string", + "documentation":"The ETag of the resulting Key Value Store.
", + "location":"header", + "locationName":"ETag" + } + }, + "payload":"KeyValueStore" + }, "UpdateOriginAccessControlRequest":{ "type":"structure", "required":[ diff --git a/botocore/data/ec2/2016-11-15/service-2.json b/botocore/data/ec2/2016-11-15/service-2.json index cded22984c..725ce6b8bd 100644 --- a/botocore/data/ec2/2016-11-15/service-2.json +++ b/botocore/data/ec2/2016-11-15/service-2.json @@ -15797,7 +15797,7 @@ }, "Iops":{ "shape":"Integer", - "documentation":"The number of I/O operations per second (IOPS). For gp3
, io1
, and io2
volumes, this represents the number of IOPS that are provisioned for the volume. For gp2
volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting.
The following are the supported values for each volume type:
gp3
: 3,000-16,000 IOPS
io1
: 100-64,000 IOPS
io2
: 100-64,000 IOPS
io1
and io2
volumes support up to 64,000 IOPS only on Instances built on the Nitro System. Other instance families support performance up to 32,000 IOPS.
This parameter is required for io1
and io2
volumes. The default for gp3
volumes is 3,000 IOPS. This parameter is not supported for gp2
, st1
, sc1
, or standard
volumes.
The number of I/O operations per second (IOPS). For gp3
, io1
, and io2
volumes, this represents the number of IOPS that are provisioned for the volume. For gp2
volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting.
The following are the supported values for each volume type:
gp3
: 3,000 - 16,000 IOPS
io1
: 100 - 64,000 IOPS
io2
: 100 - 256,000 IOPS
For io2
volumes, you can achieve up to 256,000 IOPS on instances built on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS.
This parameter is required for io1
and io2
volumes. The default for gp3
volumes is 3,000 IOPS. This parameter is not supported for gp2
, st1
, sc1
, or standard
volumes.
The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size. You can specify a volume size that is equal to or larger than the snapshot size.
The following are the supported volumes sizes for each volume type:
gp2
and gp3
: 1-16,384
io1
and io2
: 4-16,384
st1
and sc1
: 125-16,384
standard
: 1-1,024
The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size. You can specify a volume size that is equal to or larger than the snapshot size.
The following are the supported volumes sizes for each volume type:
gp2
and gp3
: 1 - 16,384 GiB
io1
: 4 - 16,384 GiB
io2
: 4 - 65,536 GiB
st1
and sc1
: 125 - 16,384 GiB
standard
: 1 - 1024 GiB
The filters.
availability-zone-group
- The Availability Zone group.
create-time
- The time stamp when the Spot Instance request was created.
fault-code
- The fault code related to the request.
fault-message
- The fault message related to the request.
instance-id
- The ID of the instance that fulfilled the request.
launch-group
- The Spot Instance launch group.
launch.block-device-mapping.delete-on-termination
- Indicates whether the EBS volume is deleted on instance termination.
launch.block-device-mapping.device-name
- The device name for the volume in the block device mapping (for example, /dev/sdh
or xvdh
).
launch.block-device-mapping.snapshot-id
- The ID of the snapshot for the EBS volume.
launch.block-device-mapping.volume-size
- The size of the EBS volume, in GiB.
launch.block-device-mapping.volume-type
- The type of EBS volume: gp2
for General Purpose SSD, io1
or io2
for Provisioned IOPS SSD, st1
for Throughput Optimized HDD, sc1
for Cold HDD, or standard
for Magnetic.
launch.group-id
- The ID of the security group for the instance.
launch.group-name
- The name of the security group for the instance.
launch.image-id
- The ID of the AMI.
launch.instance-type
- The type of instance (for example, m3.medium
).
launch.kernel-id
- The kernel ID.
launch.key-name
- The name of the key pair the instance launched with.
launch.monitoring-enabled
- Whether detailed monitoring is enabled for the Spot Instance.
launch.ramdisk-id
- The RAM disk ID.
launched-availability-zone
- The Availability Zone in which the request is launched.
network-interface.addresses.primary
- Indicates whether the IP address is the primary private IP address.
network-interface.delete-on-termination
- Indicates whether the network interface is deleted when the instance is terminated.
network-interface.description
- A description of the network interface.
network-interface.device-index
- The index of the device for the network interface attachment on the instance.
network-interface.group-id
- The ID of the security group associated with the network interface.
network-interface.network-interface-id
- The ID of the network interface.
network-interface.private-ip-address
- The primary private IP address of the network interface.
network-interface.subnet-id
- The ID of the subnet for the instance.
product-description
- The product description associated with the instance (Linux/UNIX
| Windows
).
spot-instance-request-id
- The Spot Instance request ID.
spot-price
- The maximum hourly price for any Spot Instance launched to fulfill the request.
state
- The state of the Spot Instance request (open
| active
| closed
| cancelled
| failed
). Spot request status information can help you track your Amazon EC2 Spot Instance requests. For more information, see Spot request status in the Amazon EC2 User Guide for Linux Instances.
status-code
- The short code describing the most recent evaluation of your Spot Instance request.
status-message
- The message explaining the status of the Spot Instance request.
tag:<key>
- The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner
and the value TeamA
, specify tag:Owner
for the filter name and TeamA
for the filter value.
tag-key
- The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.
type
- The type of Spot Instance request (one-time
| persistent
).
valid-from
- The start date of the request.
valid-until
- The end date of the request.
The filters.
availability-zone-group
- The Availability Zone group.
create-time
- The time stamp when the Spot Instance request was created.
fault-code
- The fault code related to the request.
fault-message
- The fault message related to the request.
instance-id
- The ID of the instance that fulfilled the request.
launch-group
- The Spot Instance launch group.
launch.block-device-mapping.delete-on-termination
- Indicates whether the EBS volume is deleted on instance termination.
launch.block-device-mapping.device-name
- The device name for the volume in the block device mapping (for example, /dev/sdh
or xvdh
).
launch.block-device-mapping.snapshot-id
- The ID of the snapshot for the EBS volume.
launch.block-device-mapping.volume-size
- The size of the EBS volume, in GiB.
launch.block-device-mapping.volume-type
- The type of EBS volume: gp2
or gp3
for General Purpose SSD, io1
or io2
for Provisioned IOPS SSD, st1
for Throughput Optimized HDD, sc1
for Cold HDD, or standard
for Magnetic.
launch.group-id
- The ID of the security group for the instance.
launch.group-name
- The name of the security group for the instance.
launch.image-id
- The ID of the AMI.
launch.instance-type
- The type of instance (for example, m3.medium
).
launch.kernel-id
- The kernel ID.
launch.key-name
- The name of the key pair the instance launched with.
launch.monitoring-enabled
- Whether detailed monitoring is enabled for the Spot Instance.
launch.ramdisk-id
- The RAM disk ID.
launched-availability-zone
- The Availability Zone in which the request is launched.
network-interface.addresses.primary
- Indicates whether the IP address is the primary private IP address.
network-interface.delete-on-termination
- Indicates whether the network interface is deleted when the instance is terminated.
network-interface.description
- A description of the network interface.
network-interface.device-index
- The index of the device for the network interface attachment on the instance.
network-interface.group-id
- The ID of the security group associated with the network interface.
network-interface.network-interface-id
- The ID of the network interface.
network-interface.private-ip-address
- The primary private IP address of the network interface.
network-interface.subnet-id
- The ID of the subnet for the instance.
product-description
- The product description associated with the instance (Linux/UNIX
| Windows
).
spot-instance-request-id
- The Spot Instance request ID.
spot-price
- The maximum hourly price for any Spot Instance launched to fulfill the request.
state
- The state of the Spot Instance request (open
| active
| closed
| cancelled
| failed
). Spot request status information can help you track your Amazon EC2 Spot Instance requests. For more information, see Spot request status in the Amazon EC2 User Guide for Linux Instances.
status-code
- The short code describing the most recent evaluation of your Spot Instance request.
status-message
- The message explaining the status of the Spot Instance request.
tag:<key>
- The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner
and the value TeamA
, specify tag:Owner
for the filter name and TeamA
for the filter value.
tag-key
- The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.
type
- The type of Spot Instance request (one-time
| persistent
).
valid-from
- The start date of the request.
valid-until
- The end date of the request.
The number of I/O operations per second (IOPS). For gp3
, io1
, and io2
volumes, this represents the number of IOPS that are provisioned for the volume. For gp2
volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting.
The following are the supported values for each volume type:
gp3
: 3,000-16,000 IOPS
io1
: 100-64,000 IOPS
io2
: 100-64,000 IOPS
For io1
and io2
volumes, we guarantee 64,000 IOPS only for Instances built on the Nitro System. Other instance families guarantee performance up to 32,000 IOPS.
This parameter is required for io1
and io2
volumes. The default for gp3
volumes is 3,000 IOPS. This parameter is not supported for gp2
, st1
, sc1
, or standard
volumes.
The number of I/O operations per second (IOPS). For gp3
, io1
, and io2
volumes, this represents the number of IOPS that are provisioned for the volume. For gp2
volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting.
The following are the supported values for each volume type:
gp3
: 3,000 - 16,000 IOPS
io1
: 100 - 64,000 IOPS
io2
: 100 - 256,000 IOPS
For io2
volumes, you can achieve up to 256,000 IOPS on instances built on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS.
This parameter is required for io1
and io2
volumes. The default for gp3
volumes is 3,000 IOPS.
The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size. You can specify a volume size that is equal to or larger than the snapshot size.
The following are the supported volumes sizes for each volume type:
gp2
and gp3
:1-16,384
io1
and io2
: 4-16,384
st1
and sc1
: 125-16,384
standard
: 1-1,024
The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size. You can specify a volume size that is equal to or larger than the snapshot size.
The following are the supported sizes for each volume type:
gp2
and gp3
: 1 - 16,384 GiB
io1
: 4 - 16,384 GiB
io2
: 4 - 65,536 GiB
st1
and sc1
: 125 - 16,384 GiB
standard
: 1 - 1024 GiB
The volume type. For more information, see Amazon EBS volume types in the Amazon EC2 User Guide. If the volume type is io1
or io2
, you must specify the IOPS that the volume supports.
The volume type. For more information, see Amazon EBS volume types in the Amazon EC2 User Guide.
", "locationName":"volumeType" }, "KmsKeyId":{ @@ -39280,7 +39280,7 @@ }, "Iops":{ "shape":"Integer", - "documentation":"The number of I/O operations per second (IOPS). For gp3
, io1
, and io2
volumes, this represents the number of IOPS that are provisioned for the volume. For gp2
volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting.
The following are the supported values for each volume type:
gp3
: 3,000-16,000 IOPS
io1
: 100-64,000 IOPS
io2
: 100-64,000 IOPS
For io1
and io2
volumes, we guarantee 64,000 IOPS only for Instances built on the Nitro System. Other instance families guarantee performance up to 32,000 IOPS.
This parameter is supported for io1
, io2
, and gp3
volumes only. This parameter is not supported for gp2
, st1
, sc1
, or standard
volumes.
The number of I/O operations per second (IOPS). For gp3
, io1
, and io2
volumes, this represents the number of IOPS that are provisioned for the volume. For gp2
volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting.
The following are the supported values for each volume type:
gp3
: 3,000 - 16,000 IOPS
io1
: 100 - 64,000 IOPS
io2
: 100 - 256,000 IOPS
For io2
volumes, you can achieve up to 256,000 IOPS on instances built on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS.
This parameter is supported for io1
, io2
, and gp3
volumes only.
The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. The following are the supported volumes sizes for each volume type:
gp2
and gp3
: 1-16,384
io1
and io2
: 4-16,384
st1
and sc1
: 125-16,384
standard
: 1-1,024
The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. The following are the supported volumes sizes for each volume type:
gp2
and gp3
: 1 - 16,384 GiB
io1
: 4 - 16,384 GiB
io2
: 4 - 65,536 GiB
st1
and sc1
: 125 - 16,384 GiB
standard
: 1 - 1024 GiB
The target size of the volume, in GiB. The target volume size must be greater than or equal to the existing size of the volume.
The following are the supported volumes sizes for each volume type:
gp2
and gp3
: 1-16,384
io1
and io2
: 4-16,384
st1
and sc1
: 125-16,384
standard
: 1-1,024
Default: The existing size is retained.
" + "documentation":"The target size of the volume, in GiB. The target volume size must be greater than or equal to the existing size of the volume.
The following are the supported volumes sizes for each volume type:
gp2
and gp3
: 1 - 16,384 GiB
io1
: 4 - 16,384 GiB
io2
: 4 - 65,536 GiB
st1
and sc1
: 125 - 16,384 GiB
standard
: 1 - 1024 GiB
Default: The existing size is retained.
" }, "VolumeType":{ "shape":"VolumeType", @@ -43647,7 +43647,7 @@ }, "Iops":{ "shape":"Integer", - "documentation":"The target IOPS rate of the volume. This parameter is valid only for gp3
, io1
, and io2
volumes.
The following are the supported values for each volume type:
gp3
: 3,000-16,000 IOPS
io1
: 100-64,000 IOPS
io2
: 100-64,000 IOPS
Default: The existing value is retained if you keep the same volume type. If you change the volume type to io1
, io2
, or gp3
, the default is 3,000.
The target IOPS rate of the volume. This parameter is valid only for gp3
, io1
, and io2
volumes.
The following are the supported values for each volume type:
gp3
: 3,000 - 16,000 IOPS
io1
: 100 - 64,000 IOPS
io2
: 100 - 256,000 IOPS
For io2
volumes, you can achieve up to 256,000 IOPS on instances built on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS.
Default: The existing value is retained if you keep the same volume type. If you change the volume type to io1
, io2
, or gp3
, the default is 3,000.
The number of I/O operations per second (IOPS) to provision for an io1
or io2
volume, with a maximum ratio of 50 IOPS/GiB for io1
, and 500 IOPS/GiB for io2
. Range is 100 to 64,000 IOPS for volumes in most Regions. Maximum IOPS of 64,000 is guaranteed only on instances built on the Nitro System. Other instance families guarantee performance up to 32,000 IOPS. For more information, see Amazon EBS volume types in the Amazon EC2 User Guide.
This parameter is valid only for Provisioned IOPS SSD (io1
and io2
) volumes.
The number of I/O operations per second (IOPS) to provision for a gp3
, io1
, or io2
volume.
The volume type. gp2
for General Purpose SSD, io1
or io2
for Provisioned IOPS SSD, Throughput Optimized HDD for st1
, Cold HDD for sc1
, or standard
for Magnetic.
Default: gp2
The volume type.
Default: gp2
Describes an EBS volume for a Scheduled Instance.
" diff --git a/botocore/data/endpoints.json b/botocore/data/endpoints.json index 9c4cb58e22..01340a4158 100644 --- a/botocore/data/endpoints.json +++ b/botocore/data/endpoints.json @@ -18807,6 +18807,7 @@ "deprecated" : true, "hostname" : "workspaces-fips.us-west-2.amazonaws.com" }, + "il-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { diff --git a/botocore/data/inspector-scan/2023-08-08/endpoint-rule-set-1.json b/botocore/data/inspector-scan/2023-08-08/endpoint-rule-set-1.json new file mode 100644 index 0000000000..9742c4ab47 --- /dev/null +++ b/botocore/data/inspector-scan/2023-08-08/endpoint-rule-set-1.json @@ -0,0 +1,350 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://inspector-scan-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://inspector-scan-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://inspector-scan.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://inspector-scan.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] +} \ No newline at end of file diff --git a/botocore/data/inspector-scan/2023-08-08/paginators-1.json b/botocore/data/inspector-scan/2023-08-08/paginators-1.json new file mode 100644 index 0000000000..ea142457a6 --- /dev/null +++ b/botocore/data/inspector-scan/2023-08-08/paginators-1.json @@ -0,0 +1,3 @@ +{ + "pagination": {} +} diff --git a/botocore/data/inspector-scan/2023-08-08/service-2.json b/botocore/data/inspector-scan/2023-08-08/service-2.json new file mode 100644 index 0000000000..c1cfffd58a --- /dev/null +++ b/botocore/data/inspector-scan/2023-08-08/service-2.json @@ -0,0 +1,200 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2023-08-08", + "endpointPrefix":"inspector-scan", + "jsonVersion":"1.1", + "protocol":"rest-json", + "serviceAbbreviation":"inspector-scan", + "serviceFullName":"Inspector Scan", + "serviceId":"Inspector Scan", + "signatureVersion":"v4", + "signingName":"inspector-scan", + "uid":"inspector-scan-2023-08-08" + }, + "operations":{ + "ScanSbom":{ + "name":"ScanSbom", + "http":{ + "method":"POST", + "requestUri":"/scan/sbom", + "responseCode":200 + }, + "input":{"shape":"ScanSbomRequest"}, + "output":{"shape":"ScanSbomResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "documentation":"Scans a provided CycloneDX 1.5 SBOM and reports on any vulnerabilities discovered in that SBOM. You can generate compatible SBOMs for your resources using the Amazon Inspector SBOM generator.
", + "idempotent":true + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "documentation":"You do not have sufficient access to perform this action.
", + "error":{ + "httpStatusCode":403, + "senderFault":true + }, + "exception":true + }, + "Integer":{ + "type":"integer", + "box":true + }, + "InternalServerException":{ + "type":"structure", + "required":[ + "message", + "reason" + ], + "members":{ + "message":{"shape":"String"}, + "reason":{ + "shape":"InternalServerExceptionReason", + "documentation":"The reason for the validation failure.
" + }, + "retryAfterSeconds":{ + "shape":"Integer", + "documentation":"The number of seconds to wait before retrying the request.
", + "location":"header", + "locationName":"Retry-After" + } + }, + "documentation":"The request processing has failed because of an unknown error, exception or failure.
", + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true, + "retryable":{"throttling":false} + }, + "InternalServerExceptionReason":{ + "type":"string", + "enum":[ + "FAILED_TO_GENERATE_SBOM", + "OTHER" + ] + }, + "OutputFormat":{ + "type":"string", + "enum":[ + "CYCLONE_DX_1_5", + "INSPECTOR" + ] + }, + "Sbom":{ + "type":"structure", + "members":{ + }, + "document":true + }, + "ScanSbomRequest":{ + "type":"structure", + "required":["sbom"], + "members":{ + "sbom":{ + "shape":"Sbom", + "documentation":"The JSON file for the SBOM you want to scan. The SBOM must be in CycloneDX 1.5 format.
" + }, + "outputFormat":{ + "shape":"OutputFormat", + "documentation":"The output format for the vulnerability report.
" + } + } + }, + "ScanSbomResponse":{ + "type":"structure", + "members":{ + "sbom":{ + "shape":"Sbom", + "documentation":"The vulnerability report for the scanned SBOM.
" + } + } + }, + "String":{"type":"string"}, + "ThrottlingException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"}, + "retryAfterSeconds":{ + "shape":"Integer", + "documentation":"The number of seconds to wait before retrying the request.
", + "location":"header", + "locationName":"Retry-After" + } + }, + "documentation":"The request was denied due to request throttling.
", + "error":{ + "httpStatusCode":429, + "senderFault":true + }, + "exception":true, + "retryable":{"throttling":true} + }, + "ValidationException":{ + "type":"structure", + "required":[ + "message", + "reason" + ], + "members":{ + "message":{"shape":"String"}, + "reason":{ + "shape":"ValidationExceptionReason", + "documentation":"The reason for the validation failure.
" + }, + "fields":{ + "shape":"ValidationExceptionFields", + "documentation":"The fields that failed validation.
" + } + }, + "documentation":"The request has failed validation due to missing required fields or having invalid inputs.
", + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "ValidationExceptionField":{ + "type":"structure", + "required":[ + "name", + "message" + ], + "members":{ + "name":{ + "shape":"String", + "documentation":"The name of the validation exception.
" + }, + "message":{ + "shape":"String", + "documentation":"The validation exception message.
" + } + }, + "documentation":"The request has failed validation due to missing required fields or having invalid inputs.
" + }, + "ValidationExceptionFields":{ + "type":"list", + "member":{"shape":"ValidationExceptionField"} + }, + "ValidationExceptionReason":{ + "type":"string", + "enum":[ + "UNKNOWN_OPERATION", + "CANNOT_PARSE", + "FIELD_VALIDATION_FAILED", + "UNSUPPORTED_SBOM_TYPE", + "OTHER" + ] + } + }, + "documentation":"Amazon Inspector Scan is a vulnerability discovery service that scans a provided Software Bill of Materials (SBOM) for security vulnerabilities.
" +} diff --git a/botocore/data/iotsitewise/2019-12-02/endpoint-rule-set-1.json b/botocore/data/iotsitewise/2019-12-02/endpoint-rule-set-1.json index 9b6c7ade5b..2d6879278a 100644 --- a/botocore/data/iotsitewise/2019-12-02/endpoint-rule-set-1.json +++ b/botocore/data/iotsitewise/2019-12-02/endpoint-rule-set-1.json @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff --git a/botocore/data/iotsitewise/2019-12-02/paginators-1.json b/botocore/data/iotsitewise/2019-12-02/paginators-1.json index 5c7c0067d6..e89847599c 100644 --- a/botocore/data/iotsitewise/2019-12-02/paginators-1.json +++ b/botocore/data/iotsitewise/2019-12-02/paginators-1.json @@ -101,6 +101,30 @@ "output_token": "nextToken", "limit_key": "maxResults", "result_key": "assetPropertySummaries" + }, + "ExecuteQuery": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "rows" + }, + "ListActions": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "actionSummaries" + }, + "ListAssetModelCompositeModels": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "assetModelCompositeModelSummaries" + }, + "ListCompositionRelationships": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "compositionRelationshipSummaries" } } } diff --git a/botocore/data/iotsitewise/2019-12-02/paginators-1.sdk-extras.json b/botocore/data/iotsitewise/2019-12-02/paginators-1.sdk-extras.json new file mode 100644 index 0000000000..77dcd6557c --- /dev/null +++ b/botocore/data/iotsitewise/2019-12-02/paginators-1.sdk-extras.json @@ -0,0 +1,12 @@ +{ + "version": 1.0, + "merge": { + "pagination": { + "ExecuteQuery": { + "non_aggregate_keys": [ + "columns" + ] + } + } + } +} diff --git a/botocore/data/iotsitewise/2019-12-02/service-2.json b/botocore/data/iotsitewise/2019-12-02/service-2.json index 1448d08dea..efc72d8ec2 100644 --- a/botocore/data/iotsitewise/2019-12-02/service-2.json +++ b/botocore/data/iotsitewise/2019-12-02/service-2.json @@ -214,7 +214,28 @@ {"shape":"LimitExceededException"}, {"shape":"ConflictingOperationException"} ], - "documentation":"Creates an asset model from specified property and hierarchy definitions. You create assets from asset models. With asset models, you can easily create assets of the same type that have standardized definitions. Each asset created from a model inherits the asset model's property and hierarchy definitions. For more information, see Defining asset models in the IoT SiteWise User Guide.
", + "documentation":"Creates an asset model from specified property and hierarchy definitions. You create assets from asset models. With asset models, you can easily create assets of the same type that have standardized definitions. Each asset created from a model inherits the asset model's property and hierarchy definitions. For more information, see Defining asset models in the IoT SiteWise User Guide.
You can create two types of asset models, ASSET_MODEL
or COMPONENT_MODEL
.
ASSET_MODEL – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model.
COMPONENT_MODEL – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model.
Creates a custom composite model from specified property and hierarchy definitions. There are two types of custom composite models, inline
and component-model-based
.
Use component-model-based custom composite models to define standard, reusable components. A component-model-based custom composite model consists of a name, a description, and the ID of the component model it references. A component-model-based custom composite model has no properties of its own; its referenced component model provides its associated properties to any created assets. For more information, see Custom composite models (Components) in the IoT SiteWise User Guide.
Use inline custom composite models to organize the properties of an asset model. The properties of inline custom composite models are local to the asset model where they are included and can't be used to create multiple assets.
To create a component-model-based model, specify the composedAssetModelId
of an existing asset model with assetModelType
of COMPONENT_MODEL
.
To create an inline model, specify the assetModelCompositeModelProperties
and don't include an composedAssetModelId
.
Defines a job to ingest data to IoT SiteWise from Amazon S3. For more information, see Create a bulk import job (CLI) in the Amazon Simple Storage Service User Guide.
You must enable IoT SiteWise to export data to Amazon S3 before you create a bulk import job. For more information about how to configure storage settings, see PutStorageConfiguration.
Defines a job to ingest data to IoT SiteWise from Amazon S3. For more information, see Create a bulk import job (CLI) in the Amazon Simple Storage Service User Guide.
Before you create a bulk import job, you must enable IoT SiteWise warm tier or IoT SiteWise cold tier. For more information about how to configure storage settings, see PutStorageConfiguration.
Bulk import is designed to store historical data to IoT SiteWise. It does not trigger computations or notifications on IoT SiteWise warm or cold tier storage.
Deletes an asset. This action can't be undone. For more information, see Deleting assets and models in the IoT SiteWise User Guide.
You can't delete an asset that's associated to another asset. For more information, see DisassociateAssets.
Deletes an asset. This action can't be undone. For more information, see Deleting assets and models in the IoT SiteWise User Guide.
You can't delete an asset that's associated to another asset. For more information, see DisassociateAssets.
Deletes an asset model. This action can't be undone. You must delete all assets created from an asset model before you can delete the model. Also, you can't delete an asset model if a parent asset model exists that contains a property formula expression that depends on the asset model that you want to delete. For more information, see Deleting assets and models in the IoT SiteWise User Guide.
", "endpoint":{"hostPrefix":"api."} }, + "DeleteAssetModelCompositeModel":{ + "name":"DeleteAssetModelCompositeModel", + "http":{ + "method":"DELETE", + "requestUri":"/asset-models/{assetModelId}/composite-models/{assetModelCompositeModelId}", + "responseCode":202 + }, + "input":{"shape":"DeleteAssetModelCompositeModelRequest"}, + "output":{"shape":"DeleteAssetModelCompositeModelResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalFailureException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictingOperationException"} + ], + "documentation":"Deletes a composite model. This action can't be undone. You must delete all assets created from a composite model before you can delete the model. Also, you can't delete a composite model if a parent asset model exists that contains a property formula expression that depends on the asset model that you want to delete. For more information, see Deleting assets and models in the IoT SiteWise User Guide.
", + "endpoint":{"hostPrefix":"api."} + }, "DeleteDashboard":{ "name":"DeleteDashboard", "http":{ @@ -476,6 +516,23 @@ "documentation":"Describes an access policy, which specifies an identity's access to an IoT SiteWise Monitor portal or project.
", "endpoint":{"hostPrefix":"monitor."} }, + "DescribeAction":{ + "name":"DescribeAction", + "http":{ + "method":"GET", + "requestUri":"/actions/{actionId}" + }, + "input":{"shape":"DescribeActionRequest"}, + "output":{"shape":"DescribeActionResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalFailureException"}, + {"shape":"ThrottlingException"} + ], + "documentation":"Retrieves information about an action.
", + "endpoint":{"hostPrefix":"api."} + }, "DescribeAsset":{ "name":"DescribeAsset", "http":{ @@ -493,6 +550,23 @@ "documentation":"Retrieves information about an asset.
", "endpoint":{"hostPrefix":"api."} }, + "DescribeAssetCompositeModel":{ + "name":"DescribeAssetCompositeModel", + "http":{ + "method":"GET", + "requestUri":"/assets/{assetId}/composite-models/{assetCompositeModelId}" + }, + "input":{"shape":"DescribeAssetCompositeModelRequest"}, + "output":{"shape":"DescribeAssetCompositeModelResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalFailureException"}, + {"shape":"ThrottlingException"} + ], + "documentation":"Retrieves information about an asset composite model (also known as an asset component). An AssetCompositeModel
is an instance of an AssetModelCompositeModel
. If you want to see information about the model this is based on, call DescribeAssetModelCompositeModel.
Retrieves information about an asset model.
", "endpoint":{"hostPrefix":"api."} }, + "DescribeAssetModelCompositeModel":{ + "name":"DescribeAssetModelCompositeModel", + "http":{ + "method":"GET", + "requestUri":"/asset-models/{assetModelId}/composite-models/{assetModelCompositeModelId}" + }, + "input":{"shape":"DescribeAssetModelCompositeModelRequest"}, + "output":{"shape":"DescribeAssetModelCompositeModelResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalFailureException"}, + {"shape":"ThrottlingException"} + ], + "documentation":"Retrieves information about an asset model composite model (also known as an asset model component). For more information, see Custom composite models (Components) in the IoT SiteWise User Guide.
", + "endpoint":{"hostPrefix":"api."} + }, "DescribeAssetProperty":{ "name":"DescribeAssetProperty", "http":{ @@ -735,6 +826,46 @@ "documentation":"Disassociates a time series (data stream) from an asset property.
", "endpoint":{"hostPrefix":"api."} }, + "ExecuteAction":{ + "name":"ExecuteAction", + "http":{ + "method":"POST", + "requestUri":"/actions", + "responseCode":202 + }, + "input":{"shape":"ExecuteActionRequest"}, + "output":{"shape":"ExecuteActionResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalFailureException"}, + {"shape":"ThrottlingException"}, + {"shape":"LimitExceededException"}, + {"shape":"ConflictingOperationException"} + ], + "documentation":"Executes an action on a target resource.
", + "endpoint":{"hostPrefix":"api."} + }, + "ExecuteQuery":{ + "name":"ExecuteQuery", + "http":{ + "method":"POST", + "requestUri":"/queries/execution" + }, + "input":{"shape":"ExecuteQueryRequest"}, + "output":{"shape":"ExecuteQueryResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"QueryTimeoutException"}, + {"shape":"InternalFailureException"}, + {"shape":"ServiceUnavailableException"} + ], + "documentation":"Run SQL queries to retrieve metadata and time-series data from asset models, assets, measurements, metrics, transforms, and aggregates.
", + "endpoint":{"hostPrefix":"data."} + }, "GetAssetPropertyAggregates":{ "name":"GetAssetPropertyAggregates", "http":{ @@ -824,6 +955,40 @@ "documentation":"Retrieves a paginated list of access policies for an identity (an IAM Identity Center user, an IAM Identity Center group, or an IAM user) or an IoT SiteWise Monitor resource (a portal or project).
", "endpoint":{"hostPrefix":"monitor."} }, + "ListActions":{ + "name":"ListActions", + "http":{ + "method":"GET", + "requestUri":"/actions" + }, + "input":{"shape":"ListActionsRequest"}, + "output":{"shape":"ListActionsResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"InternalFailureException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ], + "documentation":"Retrieves a paginated list of actions for a specific target resource.
", + "endpoint":{"hostPrefix":"api."} + }, + "ListAssetModelCompositeModels":{ + "name":"ListAssetModelCompositeModels", + "http":{ + "method":"GET", + "requestUri":"/asset-models/{assetModelId}/composite-models" + }, + "input":{"shape":"ListAssetModelCompositeModelsRequest"}, + "output":{"shape":"ListAssetModelCompositeModelsResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"InternalFailureException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"} + ], + "documentation":"Retrieves a paginated list of composite models associated with the asset model
", + "endpoint":{"hostPrefix":"api."} + }, "ListAssetModelProperties":{ "name":"ListAssetModelProperties", "http":{ @@ -942,6 +1107,23 @@ "documentation":"Retrieves a paginated list of bulk import job requests. For more information, see List bulk import jobs (CLI) in the IoT SiteWise User Guide.
", "endpoint":{"hostPrefix":"data."} }, + "ListCompositionRelationships":{ + "name":"ListCompositionRelationships", + "http":{ + "method":"GET", + "requestUri":"/asset-models/{assetModelId}/composition-relationships" + }, + "input":{"shape":"ListCompositionRelationshipsRequest"}, + "output":{"shape":"ListCompositionRelationshipsResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"InternalFailureException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ], + "documentation":"Retrieves a paginated list of composition relationships for an asset model of type COMPONENT_MODEL
.
Updates an asset model and all of the assets that were created from the model. Each asset created from the model inherits the updated asset model's property and hierarchy definitions. For more information, see Updating assets and models in the IoT SiteWise User Guide.
This operation overwrites the existing model with the provided model. To avoid deleting your asset model's properties or hierarchies, you must include their IDs and definitions in the updated asset model payload. For more information, see DescribeAssetModel.
If you remove a property from an asset model, IoT SiteWise deletes all previous data for that property. If you remove a hierarchy definition from an asset model, IoT SiteWise disassociates every asset associated with that hierarchy. You can't change the type or data type of an existing property.
Updates a composite model and all of the assets that were created from the model. Each asset created from the model inherits the updated asset model's property and hierarchy definitions. For more information, see Updating assets and models in the IoT SiteWise User Guide.
If you remove a property from a composite asset model, IoT SiteWise deletes all previous data for that property. You can’t change the type or data type of an existing property.
To replace an existing composite asset model property with a new one with the same name
, do the following:
Submit an UpdateAssetModelCompositeModel
request with the entire existing property removed.
Submit a second UpdateAssetModelCompositeModel
request that includes the new property. The new asset property will have the same name
as the previous one and IoT SiteWise will generate a new unique id
.
Access is denied.
", + "error":{"httpStatusCode":403}, + "exception":true }, "AccessPolicySummaries":{ "type":"list", @@ -1376,6 +1588,71 @@ }, "documentation":"Contains an access policy that defines an identity's access to an IoT SiteWise Monitor resource.
" }, + "ActionDefinition":{ + "type":"structure", + "required":[ + "actionDefinitionId", + "actionName", + "actionType" + ], + "members":{ + "actionDefinitionId":{ + "shape":"ID", + "documentation":"The ID of the action definition.
" + }, + "actionName":{ + "shape":"Name", + "documentation":"The name of the action definition.
" + }, + "actionType":{ + "shape":"Name", + "documentation":"The type of the action definition.
" + } + }, + "documentation":"Contains a definition for an action.
" + }, + "ActionDefinitions":{ + "type":"list", + "member":{"shape":"ActionDefinition"} + }, + "ActionPayload":{ + "type":"structure", + "required":["stringValue"], + "members":{ + "stringValue":{ + "shape":"ActionPayloadString", + "documentation":"The payload of the action in a JSON string.
" + } + }, + "documentation":"The JSON payload of the action.
" + }, + "ActionPayloadString":{ + "type":"string", + "pattern":"[^\\u0000-\\u001F\\u007F]+" + }, + "ActionSummaries":{ + "type":"list", + "member":{"shape":"ActionSummary"} + }, + "ActionSummary":{ + "type":"structure", + "members":{ + "actionId":{ + "shape":"ID", + "documentation":"The ID of the action.
" + }, + "actionDefinitionId":{ + "shape":"ID", + "documentation":"The ID of the action definition.
" + }, + "targetResource":{ + "shape":"TargetResource", + "documentation":"The resource the action will be taken on.
" + } + }, + "documentation":"Contains the summary of the actions.
" + }, + "AdaptiveIngestion":{"type":"boolean"}, "AggregateType":{ "type":"string", "enum":[ @@ -1496,10 +1773,73 @@ "id":{ "shape":"ID", "documentation":"The ID of the asset composite model.
" + }, + "externalId":{ + "shape":"ExternalId", + "documentation":"The external ID of the asset composite model. For more information, see Using external IDs in the IoT SiteWise User Guide.
" } }, "documentation":"Contains information about a composite model in an asset. This object contains the asset's properties that you define in the composite model.
" }, + "AssetCompositeModelPath":{ + "type":"list", + "member":{"shape":"AssetCompositeModelPathSegment"} + }, + "AssetCompositeModelPathSegment":{ + "type":"structure", + "members":{ + "id":{ + "shape":"ID", + "documentation":"The ID of the path segment.
" + }, + "name":{ + "shape":"Name", + "documentation":"The name of the path segment.
" + } + }, + "documentation":"Represents one level between a composite model and the root of the asset.
" + }, + "AssetCompositeModelSummaries":{ + "type":"list", + "member":{"shape":"AssetCompositeModelSummary"} + }, + "AssetCompositeModelSummary":{ + "type":"structure", + "required":[ + "id", + "name", + "type", + "description", + "path" + ], + "members":{ + "id":{ + "shape":"ID", + "documentation":"The ID of the composite model that this summary describes.
" + }, + "externalId":{ + "shape":"ExternalId", + "documentation":"An external ID to assign to the asset model.
If the composite model is a derived composite model, or one nested inside a component model, you can only set the external ID using UpdateAssetModelCompositeModel
and specifying the derived ID of the model or property from the created model it's a part of.
The name of the composite model that this summary describes.
" + }, + "type":{ + "shape":"Name", + "documentation":"The type of asset model.
ASSET_MODEL – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model.
COMPONENT_MODEL – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model.
A description of the composite model that this summary describes.
" + }, + "path":{ + "shape":"AssetCompositeModelPath", + "documentation":"The path that includes all the components of the asset model for the asset.
" + } + }, + "documentation":"Contains a summary of the composite model for a specific asset.
" + }, "AssetCompositeModels":{ "type":"list", "member":{"shape":"AssetCompositeModel"} @@ -1518,7 +1858,7 @@ "members":{ "assetId":{ "shape":"ID", - "documentation":"The ID of the asset.
" + "documentation":"The ID of the asset, in UUID format.
" }, "code":{ "shape":"AssetErrorCode", @@ -1547,6 +1887,10 @@ "name":{ "shape":"Name", "documentation":"The hierarchy name provided in the CreateAssetModel or UpdateAssetModel API operation.
" + }, + "externalId":{ + "shape":"ExternalId", + "documentation":"The external ID of the hierarchy, if it has one. When you update an asset hierarchy, you may assign an external ID if it doesn't already have one. You can't change the external ID of an asset hierarchy that already has one. For more information, see Using external IDs in the IoT SiteWise User Guide.
" } }, "documentation":"Describes an asset hierarchy that contains a hierarchy's name and ID.
" @@ -1593,8 +1937,12 @@ "documentation":"The asset property definitions for this composite model.
" }, "id":{ - "shape":"ID", + "shape":"CustomID", "documentation":"The ID of the asset model composite model.
" + }, + "externalId":{ + "shape":"ExternalId", + "documentation":"The external ID of the asset model composite model. For more information, see Using external IDs in the IoT SiteWise User Guide.
" } }, "documentation":"Contains information about a composite model in an asset model. This object contains the asset property definitions that you define in the composite model.
" @@ -1621,6 +1969,14 @@ "properties":{ "shape":"AssetModelPropertyDefinitions", "documentation":"The asset property definitions for this composite model.
" + }, + "id":{ + "shape":"ID", + "documentation":"The ID to assign to the composite model, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique.
" + }, + "externalId":{ + "shape":"ExternalId", + "documentation":"An external ID to assign to the composite model. The external ID must be unique among composite models within this asset model. For more information, see Using external IDs in the IoT SiteWise User Guide.
" } }, "documentation":"Contains a composite model definition in an asset model. This composite model definition is applied to all assets created from the asset model.
" @@ -1629,6 +1985,63 @@ "type":"list", "member":{"shape":"AssetModelCompositeModelDefinition"} }, + "AssetModelCompositeModelPath":{ + "type":"list", + "member":{"shape":"AssetModelCompositeModelPathSegment"} + }, + "AssetModelCompositeModelPathSegment":{ + "type":"structure", + "members":{ + "id":{ + "shape":"ID", + "documentation":"The ID of the path segment.
" + }, + "name":{ + "shape":"Name", + "documentation":"The name of the path segment.
" + } + }, + "documentation":"Represents one level between a composite model and the root of the asset model.
" + }, + "AssetModelCompositeModelSummaries":{ + "type":"list", + "member":{"shape":"AssetModelCompositeModelSummary"} + }, + "AssetModelCompositeModelSummary":{ + "type":"structure", + "required":[ + "id", + "name", + "type" + ], + "members":{ + "id":{ + "shape":"ID", + "documentation":"The ID of the the composite model that this summary describes..
" + }, + "externalId":{ + "shape":"ExternalId", + "documentation":"The external ID of a composite model on this asset model. For more information, see Using external IDs in the IoT SiteWise User Guide.
" + }, + "name":{ + "shape":"Name", + "documentation":"The name of the the composite model that this summary describes..
" + }, + "type":{ + "shape":"Name", + "documentation":"The type of asset model.
ASSET_MODEL – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model.
COMPONENT_MODEL – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model.
The description of the the composite model that this summary describes..
" + }, + "path":{ + "shape":"AssetModelCompositeModelPath", + "documentation":"The path that includes all the pieces that make up the composite model.
" + } + }, + "documentation":"Contains a summary of the composite model.
" + }, "AssetModelCompositeModels":{ "type":"list", "member":{"shape":"AssetModelCompositeModel"} @@ -1645,16 +2058,20 @@ ], "members":{ "id":{ - "shape":"ID", - "documentation":"The ID of the asset model hierarchy. This ID is a hierarchyId
.
The ID of the asset model hierarchy. This ID is a hierarchyId
.
If you are callling UpdateAssetModel to create a new hierarchy: You can specify its ID here, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique.
If you are calling UpdateAssetModel to modify an existing hierarchy: This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The name of the asset model hierarchy that you specify by using the CreateAssetModel or UpdateAssetModel API operation.
" }, "childAssetModelId":{ - "shape":"ID", - "documentation":"The ID of the asset model. All assets in this hierarchy must be instances of the childAssetModelId
asset model.
The ID of the asset model, in UUID format. All assets in this hierarchy must be instances of the childAssetModelId
asset model. IoT SiteWise will always return the actual asset model ID for this value. However, when you are specifying this value as part of a call to UpdateAssetModel, you may provide either the asset model ID or else externalId:
followed by the asset model's external ID. For more information, see Using external IDs in the IoT SiteWise User Guide.
The external ID (if any) provided in the CreateAssetModel or UpdateAssetModel operation. You can assign an external ID by specifying this value as part of a call to UpdateAssetModel. However, you can't change the external ID if one is already assigned. For more information, see Using external IDs in the IoT SiteWise User Guide.
" } }, "documentation":"Describes an asset hierarchy that contains a hierarchy's name, ID, and child asset model ID that specifies the type of asset that can be in this hierarchy.
" @@ -1671,8 +2088,16 @@ "documentation":"The name of the asset model hierarchy definition (as specified in the CreateAssetModel or UpdateAssetModel API operation).
" }, "childAssetModelId":{ + "shape":"CustomID", + "documentation":"The ID of an asset model for this hierarchy. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of an asset model for this hierarchy.
" + "documentation":"The ID to assign to the asset model hierarchy, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique.
" + }, + "externalId":{ + "shape":"ExternalId", + "documentation":"An external ID to assign to the asset model hierarchy. The external ID must be unique among asset model hierarchies within this asset model. For more information, see Using external IDs in the IoT SiteWise User Guide.
" } }, "documentation":"Contains an asset model hierarchy used in asset model creation. An asset model hierarchy determines the kind (or type) of asset that can belong to a hierarchy.
" @@ -1694,8 +2119,8 @@ ], "members":{ "id":{ - "shape":"ID", - "documentation":"The ID of the asset model property.
" + "shape":"CustomID", + "documentation":"The ID of the asset model property.
If you are callling UpdateAssetModel to create a new property: You can specify its ID here, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique.
If you are calling UpdateAssetModel to modify an existing property: This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The property type (see PropertyType
).
The structured path to the property from the root of the asset model.
" + }, + "externalId":{ + "shape":"ExternalId", + "documentation":"The external ID (if any) provided in the CreateAssetModel or UpdateAssetModel operation. You can assign an external ID by specifying this value as part of a call to UpdateAssetModel. However, you can't change the external ID if one is already assigned. For more information, see Using external IDs in the IoT SiteWise User Guide.
" } }, "documentation":"Contains information about an asset model property.
" @@ -1747,6 +2180,14 @@ "type":{ "shape":"PropertyType", "documentation":"The property definition type (see PropertyType
). You can only specify one type in a property definition.
The ID to assign to the asset model property, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique.
" + }, + "externalId":{ + "shape":"ExternalId", + "documentation":"An external ID to assign to the property definition. The external ID must be unique among property definitions within this asset model. For more information, see Using external IDs in the IoT SiteWise User Guide.
" } }, "documentation":"Contains an asset model property definition. This property definition is applied to all assets created from the asset model.
" @@ -1755,6 +2196,24 @@ "type":"list", "member":{"shape":"AssetModelPropertyDefinition"} }, + "AssetModelPropertyPath":{ + "type":"list", + "member":{"shape":"AssetModelPropertyPathSegment"} + }, + "AssetModelPropertyPathSegment":{ + "type":"structure", + "members":{ + "id":{ + "shape":"ID", + "documentation":"The ID of the path segment.
" + }, + "name":{ + "shape":"Name", + "documentation":"The name of the path segment.
" + } + }, + "documentation":"Represents one level between a property and the root of the asset model.
" + }, "AssetModelPropertySummaries":{ "type":"list", "member":{"shape":"AssetModelPropertySummary"} @@ -1791,6 +2250,14 @@ "assetModelCompositeModelId":{ "shape":"ID", "documentation":"The ID of the composite model that contains the asset model property.
" + }, + "path":{ + "shape":"AssetModelPropertyPath", + "documentation":"The structured path to the property from the root of the asset model.
" + }, + "externalId":{ + "shape":"ExternalId", + "documentation":"The external ID of the property. For more information, see Using external IDs in the IoT SiteWise User Guide.
" } }, "documentation":"Contains a summary of a property associated with a model.
" @@ -1839,7 +2306,7 @@ "members":{ "id":{ "shape":"ID", - "documentation":"The ID of the asset model (used with IoT SiteWise APIs).
" + "documentation":"The ID of the asset model (used with IoT SiteWise API operations).
" }, "arn":{ "shape":"ARN", @@ -1864,10 +2331,25 @@ "status":{ "shape":"AssetModelStatus", "documentation":"The current status of the asset model.
" + }, + "assetModelType":{ + "shape":"AssetModelType", + "documentation":"The type of asset model.
ASSET_MODEL – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model.
COMPONENT_MODEL – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model.
The external ID of the asset model. For more information, see Using external IDs in the IoT SiteWise User Guide.
" } }, "documentation":"Contains a summary of an asset model.
" }, + "AssetModelType":{ + "type":"string", + "enum":[ + "ASSET_MODEL", + "COMPONENT_MODEL" + ] + }, "AssetProperties":{ "type":"list", "member":{"shape":"AssetProperty"} @@ -1907,6 +2389,14 @@ "unit":{ "shape":"PropertyUnit", "documentation":"The unit (such as Newtons
or RPM
) of the asset property.
The structured path to the property from the root of the asset.
" + }, + "externalId":{ + "shape":"ExternalId", + "documentation":"The external ID of the asset property. For more information, see Using external IDs in the IoT SiteWise User Guide.
" } }, "documentation":"Contains asset property information.
" @@ -1917,12 +2407,31 @@ "min":1, "pattern":"[^\\u0000-\\u001F\\u007F]+" }, + "AssetPropertyPath":{ + "type":"list", + "member":{"shape":"AssetPropertyPathSegment"} + }, + "AssetPropertyPathSegment":{ + "type":"structure", + "members":{ + "id":{ + "shape":"ID", + "documentation":"The ID of the path segment.
" + }, + "name":{ + "shape":"Name", + "documentation":"The name of the path segment.
" + } + }, + "documentation":"Represents one level between a property and the root of the asset.
" + }, "AssetPropertySummaries":{ "type":"list", "member":{"shape":"AssetPropertySummary"} }, "AssetPropertySummary":{ "type":"structure", + "required":["id"], "members":{ "id":{ "shape":"ID", @@ -1940,6 +2449,14 @@ "assetCompositeModelId":{ "shape":"ID", "documentation":"The ID of the composite model that contains the asset property.
" + }, + "path":{ + "shape":"AssetPropertyPath", + "documentation":"The structured path to the property from the root of the asset.
" + }, + "externalId":{ + "shape":"ExternalId", + "documentation":"The external ID of the property. For more information, see Using external IDs in the IoT SiteWise User Guide.
" } }, "documentation":"Contains a summary of a property associated with an asset.
" @@ -2041,7 +2558,7 @@ "members":{ "id":{ "shape":"ID", - "documentation":"The ID of the asset.
" + "documentation":"The ID of the asset, in UUID format.
" }, "arn":{ "shape":"ARN", @@ -2074,6 +2591,10 @@ "description":{ "shape":"Description", "documentation":"A description for the asset.
" + }, + "externalId":{ + "shape":"ExternalId", + "documentation":"The external ID of the asset. For more information, see Using external IDs in the IoT SiteWise User Guide.
" } }, "documentation":"Contains a summary of an asset.
" @@ -2087,18 +2608,18 @@ ], "members":{ "assetId":{ - "shape":"ID", - "documentation":"The ID of the parent asset.
", + "shape":"CustomID", + "documentation":"The ID of the parent asset. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of a hierarchy in the parent asset's model. Hierarchies allow different groupings of assets to be formed that all come from the same asset model. For more information, see Asset hierarchies in the IoT SiteWise User Guide.
" + "shape":"CustomID", + "documentation":"The ID of a hierarchy in the parent asset's model. (This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.) Hierarchies allow different groupings of assets to be formed that all come from the same asset model. For more information, see Asset hierarchies in the IoT SiteWise User Guide.
The ID of the child asset to be associated.
" + "shape":"CustomID", + "documentation":"The ID of the child asset to be associated. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the asset in which the asset property was created.
", + "shape":"CustomID", + "documentation":"The ID of the asset in which the asset property was created. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the asset property.
", + "shape":"CustomID", + "documentation":"The ID of the asset property. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the asset.
" + "documentation":"The ID of the asset, in UUID format.
" }, "arn":{ "shape":"ARN", @@ -2192,6 +2713,10 @@ "description":{ "shape":"Description", "documentation":"A description for the asset.
" + }, + "externalId":{ + "shape":"ExternalId", + "documentation":"The external ID of the asset. For more information, see Using external IDs in the IoT SiteWise User Guide.
" } }, "documentation":"Contains a summary of an associated asset.
" @@ -2318,7 +2843,7 @@ }, "propertyId":{ "shape":"ID", - "documentation":"The ID of the asset property.
" + "documentation":"The ID of the asset property, in UUID format.
" }, "propertyAlias":{ "shape":"AssetPropertyAlias", @@ -2518,7 +3043,7 @@ }, "propertyId":{ "shape":"ID", - "documentation":"The ID of the asset property.
" + "documentation":"The ID of the asset property, in UUID format.
" }, "propertyAlias":{ "shape":"AssetPropertyAlias", @@ -2598,7 +3123,7 @@ }, "propertyId":{ "shape":"ID", - "documentation":"The ID of the asset property.
" + "documentation":"The ID of the asset property, in UUID format.
" }, "propertyAlias":{ "shape":"AssetPropertyAlias", @@ -2968,6 +3493,20 @@ "min":36, "pattern":"\\S{36,64}" }, + "ColumnInfo":{ + "type":"structure", + "members":{ + "name":{ + "shape":"String", + "documentation":"The name of the column description.
" + }, + "type":{ + "shape":"ColumnType", + "documentation":"The type of the column description.
" + } + }, + "documentation":"A description of the column in the query results.
" + }, "ColumnName":{ "type":"string", "enum":[ @@ -2985,6 +3524,20 @@ "type":"list", "member":{"shape":"ColumnName"} }, + "ColumnType":{ + "type":"structure", + "members":{ + "scalarType":{ + "shape":"ScalarType", + "documentation":"The allowed data types that the column has as it's value.
" + } + }, + "documentation":"The data type of the column.
" + }, + "ColumnsList":{ + "type":"list", + "member":{"shape":"ColumnInfo"} + }, "CompositeModelProperty":{ "type":"structure", "required":[ @@ -3005,10 +3558,65 @@ "id":{ "shape":"ID", "documentation":"The ID of the composite model that contains the property.
" + }, + "externalId":{ + "shape":"ExternalId", + "documentation":"The external ID of the composite model that contains the property. For more information, see Using external IDs in the IoT SiteWise User Guide.
" } }, "documentation":"Contains information about a composite model property on an asset.
" }, + "CompositionDetails":{ + "type":"structure", + "members":{ + "compositionRelationship":{ + "shape":"CompositionRelationship", + "documentation":"An array detailing the composition relationship for this composite model.
" + } + }, + "documentation":"Metadata for the composition relationship established by using composedAssetModelId
in CreateAssetModelCompositeModel
.
The ID of the component.
" + } + }, + "documentation":"Represents a composite model that composed an asset model of type COMPONENT_MODEL
.
The ID of the asset model, in UUID format.
" + }, + "assetModelCompositeModelId":{ + "shape":"ID", + "documentation":"The ID of a composite model on this asset model.
" + }, + "assetModelCompositeModelType":{ + "shape":"Name", + "documentation":"The composite model type. Valid values are AWS/ALARM
, CUSTOM
, or AWS/L4E_ANOMALY
.
Contains a summary of the components of the composite model.
" + }, "ComputeLocation":{ "type":"string", "enum":[ @@ -3109,27 +3717,99 @@ "documentation":"A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.
", "idempotencyToken":true }, - "tags":{ - "shape":"TagMap", - "documentation":"A list of key-value pairs that contain metadata for the access policy. For more information, see Tagging your IoT SiteWise resources in the IoT SiteWise User Guide.
" + "tags":{ + "shape":"TagMap", + "documentation":"A list of key-value pairs that contain metadata for the access policy. For more information, see Tagging your IoT SiteWise resources in the IoT SiteWise User Guide.
" + } + } + }, + "CreateAccessPolicyResponse":{ + "type":"structure", + "required":[ + "accessPolicyId", + "accessPolicyArn" + ], + "members":{ + "accessPolicyId":{ + "shape":"ID", + "documentation":"The ID of the access policy.
" + }, + "accessPolicyArn":{ + "shape":"ARN", + "documentation":"The ARN of the access policy, which has the following format.
arn:${Partition}:iotsitewise:${Region}:${Account}:access-policy/${AccessPolicyId}
The ID of the asset model this composite model is a part of.
", + "location":"uri", + "locationName":"assetModelId" + }, + "parentAssetModelCompositeModelId":{ + "shape":"CustomID", + "documentation":"The ID of the parent composite model in this asset model relationship.
" + }, + "assetModelCompositeModelExternalId":{ + "shape":"ExternalId", + "documentation":"An external ID to assign to the composite model.
If the composite model is a derived composite model, or one nested inside a component model, you can only set the external ID using UpdateAssetModelCompositeModel
and specifying the derived ID of the model or property from the created model it's a part of.
The ID of the composite model. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique.
" + }, + "assetModelCompositeModelDescription":{ + "shape":"Description", + "documentation":"A description for the composite model.
" + }, + "assetModelCompositeModelName":{ + "shape":"Name", + "documentation":"A unique, friendly name for the composite model.
" + }, + "assetModelCompositeModelType":{ + "shape":"Name", + "documentation":"The composite model type. Valid values are AWS/ALARM
, CUSTOM
, or AWS/L4E_ANOMALY
.
A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.
", + "idempotencyToken":true + }, + "composedAssetModelId":{ + "shape":"CustomID", + "documentation":"The ID of a composite model on this asset.
" + }, + "assetModelCompositeModelProperties":{ + "shape":"AssetModelPropertyDefinitions", + "documentation":"The property definitions of the composite model. For more information, see <LINK>.
You can specify up to 200 properties per composite model. For more information, see Quotas in the IoT SiteWise User Guide.
" } } }, - "CreateAccessPolicyResponse":{ + "CreateAssetModelCompositeModelResponse":{ "type":"structure", "required":[ - "accessPolicyId", - "accessPolicyArn" + "assetModelCompositeModelId", + "assetModelCompositeModelPath", + "assetModelStatus" ], "members":{ - "accessPolicyId":{ + "assetModelCompositeModelId":{ "shape":"ID", - "documentation":"The ID of the access policy.
" + "documentation":"The ID of the composed asset model. You can use this ID when you call other IoT SiteWise APIs.
" }, - "accessPolicyArn":{ - "shape":"ARN", - "documentation":"The ARN of the access policy, which has the following format.
arn:${Partition}:iotsitewise:${Region}:${Account}:access-policy/${AccessPolicyId}
The path to the composite model listing the parent composite models.
" + }, + "assetModelStatus":{"shape":"AssetModelStatus"} } }, "CreateAssetModelRequest":{ @@ -3154,7 +3834,7 @@ }, "assetModelCompositeModels":{ "shape":"AssetModelCompositeModelDefinitions", - "documentation":"The composite asset models that are part of this asset model. Composite asset models are asset models that contain specific properties. Each composite model has a type that defines the properties that the composite model supports. Use composite asset models to define alarms on this asset model.
" + "documentation":"The composite models that are part of this asset model. It groups properties (such as attributes, measurements, transforms, and metrics) and child composite models that model parts of your industrial equipment. Each composite model has a type that defines the properties that the composite model supports. Use composite models to define alarms on this asset model.
When creating custom composite models, you need to use CreateAssetModelCompositeModel. For more information, see <LINK>.
A list of key-value pairs that contain metadata for the asset model. For more information, see Tagging your IoT SiteWise resources in the IoT SiteWise User Guide.
" + }, + "assetModelId":{ + "shape":"ID", + "documentation":"The ID to assign to the asset model, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique.
" + }, + "assetModelExternalId":{ + "shape":"ExternalId", + "documentation":"An external ID to assign to the asset model. The external ID must be unique within your Amazon Web Services account. For more information, see Using external IDs in the IoT SiteWise User Guide.
" + }, + "assetModelType":{ + "shape":"AssetModelType", + "documentation":"The type of asset model.
ASSET_MODEL – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model.
COMPONENT_MODEL – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model.
The ID of the asset model. You can use this ID when you call other IoT SiteWise APIs.
" + "documentation":"The ID of the asset model, in UUID format. You can use this ID when you call other IoT SiteWise API operations.
" }, "assetModelArn":{ "shape":"ARN", @@ -3201,8 +3893,8 @@ "documentation":"A friendly name for the asset.
" }, "assetModelId":{ - "shape":"ID", - "documentation":"The ID of the asset model from which to create the asset.
" + "shape":"CustomID", + "documentation":"The ID of the asset model from which to create the asset. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
A description for the asset.
" + }, + "assetId":{ + "shape":"ID", + "documentation":"The ID to assign to the asset, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique.
" + }, + "assetExternalId":{ + "shape":"ExternalId", + "documentation":"An external ID to assign to the asset. The external ID must be unique within your Amazon Web Services account. For more information, see Using external IDs in the IoT SiteWise User Guide.
" } } }, @@ -3229,7 +3929,7 @@ "members":{ "assetId":{ "shape":"ID", - "documentation":"The ID of the asset. This ID uniquely identifies the asset within IoT SiteWise and can be used with other IoT SiteWise APIs.
" + "documentation":"The ID of the asset, in UUID format. This ID uniquely identifies the asset within IoT SiteWise and can be used with other IoT SiteWise API operations.
" }, "assetArn":{ "shape":"ARN", @@ -3270,6 +3970,14 @@ "jobConfiguration":{ "shape":"JobConfiguration", "documentation":"Contains the configuration information of a job, such as the file format used to save data in Amazon S3.
" + }, + "adaptiveIngestion":{ + "shape":"AdaptiveIngestion", + "documentation":"If set to true, ingest new data into IoT SiteWise storage. Measurements with notifications, metrics and transforms are computed. If set to false, historical data is ingested into IoT SiteWise as is.
" + }, + "deleteFilesAfterImport":{ + "shape":"DeleteFilesAfterImport", + "documentation":"If set to true, your data files is deleted from S3, after ingestion into IoT SiteWise storage.
" } } }, @@ -3291,7 +3999,7 @@ }, "jobStatus":{ "shape":"JobStatus", - "documentation":"The status of the bulk import job can be one of following values.
PENDING
– IoT SiteWise is waiting for the current bulk import job to finish.
CANCELLED
– The bulk import job has been canceled.
RUNNING
– IoT SiteWise is processing your request to import your data from Amazon S3.
COMPLETED
– IoT SiteWise successfully completed your request to import data from Amazon S3.
FAILED
– IoT SiteWise couldn't process your request to import data from Amazon S3. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.
COMPLETED_WITH_FAILURES
– IoT SiteWise completed your request to import data from Amazon S3 with errors. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.
The status of the bulk import job can be one of following values:
PENDING
– IoT SiteWise is waiting for the current bulk import job to finish.
CANCELLED
– The bulk import job has been canceled.
RUNNING
– IoT SiteWise is processing your request to import your data from Amazon S3.
COMPLETED
– IoT SiteWise successfully completed your request to import data from Amazon S3.
FAILED
– IoT SiteWise couldn't process your request to import data from Amazon S3. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.
COMPLETED_WITH_FAILURES
– IoT SiteWise completed your request to import data from Amazon S3 with errors. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.
The ID of the gateway device. You can use this ID when you call other IoT SiteWise APIs.
" + "documentation":"The ID of the gateway device. You can use this ID when you call other IoT SiteWise API operations.
" }, "gatewayArn":{ "shape":"ARN", @@ -3424,7 +4132,7 @@ }, "portalAuthMode":{ "shape":"AuthMode", - "documentation":"The service to use to authenticate users to the portal. Choose from the following options:
SSO
– The portal uses IAM Identity Center (successor to Single Sign-On) to authenticate users and manage user permissions. Before you can create a portal that uses IAM Identity Center, you must enable IAM Identity Center. For more information, see Enabling IAM Identity Center in the IoT SiteWise User Guide. This option is only available in Amazon Web Services Regions other than the China Regions.
IAM
– The portal uses Identity and Access Management to authenticate users and manage user permissions.
You can't change this value after you create a portal.
Default: SSO
The service to use to authenticate users to the portal. Choose from the following options:
SSO
– The portal uses IAM Identity Center to authenticate users and manage user permissions. Before you can create a portal that uses IAM Identity Center, you must enable IAM Identity Center. For more information, see Enabling IAM Identity Center in the IoT SiteWise User Guide. This option is only available in Amazon Web Services Regions other than the China Regions.
IAM
– The portal uses Identity and Access Management to authenticate users and manage user permissions.
You can't change this value after you create a portal.
Default: SSO
The column names specified in the .csv file.
" } }, - "documentation":"A .csv file.
" + "documentation":"A .CSV file.
" + }, + "CustomID":{ + "type":"string", + "max":139, + "min":13, + "pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$|^externalId:[a-zA-Z0-9][a-zA-Z_\\-0-9.:]*[a-zA-Z0-9]+" }, "CustomerManagedS3Storage":{ "type":"structure", @@ -3583,10 +4298,34 @@ }, "documentation":"Contains a dashboard summary.
" }, + "Datum":{ + "type":"structure", + "members":{ + "scalarValue":{ + "shape":"ScalarValue", + "documentation":"Indicates if the data point is a scalar value such as integer, string, double, or Boolean.
" + }, + "arrayValue":{ + "shape":"DatumList", + "documentation":"Indicates if the data point is an array.
" + }, + "rowValue":{ + "shape":"Row", + "documentation":"Indicates if the data point is a row.
" + }, + "nullValue":{ + "shape":"NullableBoolean", + "documentation":"Indicates if the data point is null.
" + } + }, + "documentation":"Represents a single data point in a query result.
" + }, + "DatumList":{ + "type":"list", + "member":{"shape":"Datum"} + }, "DefaultValue":{ "type":"string", - "max":1024, - "min":1, "pattern":"[^\\u0000-\\u001F\\u007F]+" }, "DeleteAccessPolicyRequest":{ @@ -3613,13 +4352,48 @@ "members":{ } }, + "DeleteAssetModelCompositeModelRequest":{ + "type":"structure", + "required":[ + "assetModelId", + "assetModelCompositeModelId" + ], + "members":{ + "assetModelId":{ + "shape":"CustomID", + "documentation":"The ID of the asset model, in UUID format.
", + "location":"uri", + "locationName":"assetModelId" + }, + "assetModelCompositeModelId":{ + "shape":"CustomID", + "documentation":"The ID of a composite model on this asset model.
", + "location":"uri", + "locationName":"assetModelCompositeModelId" + }, + "clientToken":{ + "shape":"ClientToken", + "documentation":"A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.
", + "idempotencyToken":true, + "location":"querystring", + "locationName":"clientToken" + } + } + }, + "DeleteAssetModelCompositeModelResponse":{ + "type":"structure", + "required":["assetModelStatus"], + "members":{ + "assetModelStatus":{"shape":"AssetModelStatus"} + } + }, "DeleteAssetModelRequest":{ "type":"structure", "required":["assetModelId"], "members":{ "assetModelId":{ - "shape":"ID", - "documentation":"The ID of the asset model to delete.
", + "shape":"CustomID", + "documentation":"The ID of the asset model to delete. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the asset to delete.
", + "shape":"CustomID", + "documentation":"The ID of the asset to delete. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the asset in which the asset property was created.
", + "shape":"CustomID", + "documentation":"The ID of the asset in which the asset property was created. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the asset property.
", + "shape":"CustomID", + "documentation":"The ID of the asset property. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the action.
", + "location":"uri", + "locationName":"actionId" + } + } + }, + "DescribeActionResponse":{ + "type":"structure", + "required":[ + "actionId", + "targetResource", + "actionDefinitionId", + "actionPayload", + "executionTime" + ], + "members":{ + "actionId":{ + "shape":"ID", + "documentation":"The ID of the action.
" + }, + "targetResource":{ + "shape":"TargetResource", + "documentation":"The resource the action will be taken on.
" + }, + "actionDefinitionId":{ + "shape":"ID", + "documentation":"The ID of the action definition.
" + }, + "actionPayload":{ + "shape":"ActionPayload", + "documentation":"The JSON payload of the action.
" + }, + "executionTime":{ + "shape":"Timestamp", + "documentation":"The time the action was executed.
" + } + } + }, + "DescribeAssetCompositeModelRequest":{ + "type":"structure", + "required":[ + "assetId", + "assetCompositeModelId" + ], + "members":{ + "assetId":{ + "shape":"CustomID", + "documentation":"The ID of the asset. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of a composite model on this asset. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the asset, in UUID format. This ID uniquely identifies the asset within IoT SiteWise and can be used with other IoT SiteWise APIs.
" + }, + "assetCompositeModelId":{ + "shape":"ID", + "documentation":"The ID of a composite model on this asset.
" + }, + "assetCompositeModelExternalId":{ + "shape":"ExternalId", + "documentation":"An external ID to assign to the asset model.
If the composite model is a component-based composite model, or one nested inside a component model, you can only set the external ID using UpdateAssetModelCompositeModel
and specifying the derived ID of the model or property from the created model it's a part of.
The path to the composite model listing the parent composite models.
" + }, + "assetCompositeModelName":{ + "shape":"Name", + "documentation":"The unique, friendly name for the composite model.
" + }, + "assetCompositeModelDescription":{ + "shape":"Description", + "documentation":"A description for the composite model.
" + }, + "assetCompositeModelType":{ + "shape":"Name", + "documentation":"The composite model type. Valid values are AWS/ALARM
, CUSTOM
, or AWS/L4E_ANOMALY
.
The property definitions of the composite model that was used to create the asset.
" + }, + "assetCompositeModelSummaries":{ + "shape":"AssetCompositeModelSummaries", + "documentation":"The list of composite model summaries.
" + }, + "actionDefinitions":{ + "shape":"ActionDefinitions", + "documentation":"The available actions for a composite model on this asset.
" + } + } + }, + "DescribeAssetModelCompositeModelRequest":{ + "type":"structure", + "required":[ + "assetModelId", + "assetModelCompositeModelId" + ], + "members":{ + "assetModelId":{ + "shape":"CustomID", + "documentation":"The ID of the asset model. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of a composite model on this asset model. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the asset model, in UUID format.
" + }, + "assetModelCompositeModelId":{ + "shape":"ID", + "documentation":"The ID of a composite model on this asset model.
" + }, + "assetModelCompositeModelExternalId":{ + "shape":"ExternalId", + "documentation":"The external ID of a composite model on this asset model.
" + }, + "assetModelCompositeModelPath":{ + "shape":"AssetModelCompositeModelPath", + "documentation":"The path to the composite model listing the parent composite models.
" + }, + "assetModelCompositeModelName":{ + "shape":"Name", + "documentation":"The unique, friendly name for the composite model.
" + }, + "assetModelCompositeModelDescription":{ + "shape":"Description", + "documentation":"The description for the composite model.
" + }, + "assetModelCompositeModelType":{ + "shape":"Name", + "documentation":"The composite model type. Valid values are AWS/ALARM
, CUSTOM
, or AWS/L4E_ANOMALY
.
The property definitions of the composite model.
" + }, + "compositionDetails":{ + "shape":"CompositionDetails", + "documentation":"Metadata for the composition relationship established by using composedAssetModelId
in CreateAssetModelCompositeModel
. For instance, an array detailing the path of the composition relationship for this composite model.
The list of composite model summaries for the composite model.
" + }, + "actionDefinitions":{ + "shape":"ActionDefinitions", + "documentation":"The available actions for a composite model on this asset model.
" + } + } + }, "DescribeAssetModelRequest":{ "type":"structure", "required":["assetModelId"], "members":{ "assetModelId":{ - "shape":"ID", - "documentation":"The ID of the asset model.
", + "shape":"CustomID", + "documentation":"The ID of the asset model. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the asset model.
" + "documentation":"The ID of the asset model, in UUID format.
" }, "assetModelArn":{ "shape":"ARN", @@ -3900,7 +4875,7 @@ }, "assetModelCompositeModels":{ "shape":"AssetModelCompositeModels", - "documentation":"The list of composite asset models for the asset model.
" + "documentation":"The list of built-in composite models for the asset model, such as those with those of type AWS/ALARMS
.
The current status of the asset model, which contains a state and any error message.
" + }, + "assetModelType":{ + "shape":"AssetModelType", + "documentation":"The type of asset model.
ASSET_MODEL – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model.
COMPONENT_MODEL – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model.
The list of the immediate child custom composite model summaries for the asset model.
" + }, + "assetModelExternalId":{ + "shape":"ExternalId", + "documentation":"The external ID of the asset model, if any.
" } } }, @@ -3924,14 +4911,14 @@ ], "members":{ "assetId":{ - "shape":"ID", - "documentation":"The ID of the asset.
", + "shape":"CustomID", + "documentation":"The ID of the asset. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the asset property.
", + "shape":"CustomID", + "documentation":"The ID of the asset property. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the asset.
" + "documentation":"The ID of the asset, in UUID format.
" }, "assetName":{ "shape":"Name", @@ -3955,7 +4942,7 @@ }, "assetModelId":{ "shape":"ID", - "documentation":"The ID of the asset model.
" + "documentation":"The ID of the asset model, in UUID format.
" }, "assetProperty":{ "shape":"Property", @@ -3963,7 +4950,11 @@ }, "compositeModel":{ "shape":"CompositeModelProperty", - "documentation":"The composite asset model that declares this asset property, if this asset property exists in a composite model.
" + "documentation":"The composite model that declares this asset property, if this asset property exists in a composite model.
" + }, + "assetExternalId":{ + "shape":"ExternalId", + "documentation":"The external ID of the asset. For more information, see Using external IDs in the IoT SiteWise User Guide.
" } } }, @@ -3972,8 +4963,8 @@ "required":["assetId"], "members":{ "assetId":{ - "shape":"ID", - "documentation":"The ID of the asset.
", + "shape":"CustomID", + "documentation":"The ID of the asset. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the asset.
" + "documentation":"The ID of the asset, in UUID format.
" }, "assetArn":{ "shape":"ARN", @@ -4042,6 +5033,14 @@ "assetDescription":{ "shape":"Description", "documentation":"A description for the asset.
" + }, + "assetCompositeModelSummaries":{ + "shape":"AssetCompositeModelSummaries", + "documentation":"The list of the immediate child custom composite model summaries for the asset.
" + }, + "assetExternalId":{ + "shape":"ExternalId", + "documentation":"The external ID of the asset, if any.
" } } }, @@ -4081,7 +5080,7 @@ }, "jobStatus":{ "shape":"JobStatus", - "documentation":"The status of the bulk import job can be one of following values.
PENDING
– IoT SiteWise is waiting for the current bulk import job to finish.
CANCELLED
– The bulk import job has been canceled.
RUNNING
– IoT SiteWise is processing your request to import your data from Amazon S3.
COMPLETED
– IoT SiteWise successfully completed your request to import data from Amazon S3.
FAILED
– IoT SiteWise couldn't process your request to import data from Amazon S3. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.
COMPLETED_WITH_FAILURES
– IoT SiteWise completed your request to import data from Amazon S3 with errors. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.
The status of the bulk import job can be one of following values:
PENDING
– IoT SiteWise is waiting for the current bulk import job to finish.
CANCELLED
– The bulk import job has been canceled.
RUNNING
– IoT SiteWise is processing your request to import your data from Amazon S3.
COMPLETED
– IoT SiteWise successfully completed your request to import data from Amazon S3.
FAILED
– IoT SiteWise couldn't process your request to import data from Amazon S3. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.
COMPLETED_WITH_FAILURES
– IoT SiteWise completed your request to import data from Amazon S3 with errors. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.
The date the job was last updated, in Unix epoch time.
" + }, + "adaptiveIngestion":{ + "shape":"AdaptiveIngestion", + "documentation":"If set to true, ingest new data into IoT SiteWise storage. Measurements with notifications, metrics and transforms are computed. If set to false, historical data is ingested into IoT SiteWise as is.
" + }, + "deleteFilesAfterImport":{ + "shape":"DeleteFilesAfterImport", + "documentation":"If set to true, your data files is deleted from S3, after ingestion into IoT SiteWise storage.
" } } }, @@ -4353,7 +5360,7 @@ }, "portalClientId":{ "shape":"PortalClientId", - "documentation":"The IAM Identity Center application generated client ID (used with IAM Identity Center APIs). IoT SiteWise includes portalClientId
for only portals that use IAM Identity Center to authenticate users.
The IAM Identity Center application generated client ID (used with IAM Identity Center API operations). IoT SiteWise includes portalClientId
for only portals that use IAM Identity Center to authenticate users.
How many days your data is kept in the hot tier. By default, your data is kept indefinitely in the hot tier.
" + "documentation":"The number of days your data is kept in the hot tier. By default, your data is kept indefinitely in the hot tier.
" }, "configurationStatus":{"shape":"ConfigurationStatus"}, "lastUpdateDate":{ "shape":"Timestamp", "documentation":"The date the storage configuration was last updated, in Unix epoch time.
" + }, + "warmTier":{ + "shape":"WarmTierState", + "documentation":"A service managed storage tier optimized for analytical queries. It stores periodically uploaded, buffered and historical data ingested with the CreaeBulkImportJob API.
" + }, + "warmTierRetentionPeriod":{ + "shape":"WarmTierRetentionPeriod", + "documentation":"Set this period to specify how long your data is stored in the warm tier before it is deleted. You can set this only if cold tier is enabled.
" } } }, @@ -4495,14 +5510,14 @@ "locationName":"alias" }, "assetId":{ - "shape":"ID", - "documentation":"The ID of the asset in which the asset property was created.
", + "shape":"CustomID", + "documentation":"The ID of the asset in which the asset property was created. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the asset property.
", + "shape":"CustomID", + "documentation":"The ID of the asset property. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the asset property.
" + "documentation":"The ID of the asset property, in UUID format.
" }, "alias":{ "shape":"PropertyAlias", @@ -4601,18 +5616,18 @@ ], "members":{ "assetId":{ - "shape":"ID", - "documentation":"The ID of the parent asset from which to disassociate the child asset.
", + "shape":"CustomID", + "documentation":"The ID of the parent asset from which to disassociate the child asset. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of a hierarchy in the parent asset's model. Hierarchies allow different groupings of assets to be formed that all come from the same asset model. You can use the hierarchy ID to identify the correct asset to disassociate. For more information, see Asset hierarchies in the IoT SiteWise User Guide.
" + "shape":"CustomID", + "documentation":"The ID of a hierarchy in the parent asset's model. (This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.) Hierarchies allow different groupings of assets to be formed that all come from the same asset model. You can use the hierarchy ID to identify the correct asset to disassociate. For more information, see Asset hierarchies in the IoT SiteWise User Guide.
The ID of the child asset to disassociate.
" + "shape":"CustomID", + "documentation":"The ID of the child asset to disassociate. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the asset in which the asset property was created.
", + "shape":"CustomID", + "documentation":"The ID of the asset in which the asset property was created. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the asset property.
", + "shape":"CustomID", + "documentation":"The ID of the asset property. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The error code.
" + "code":{ + "shape":"ErrorCode", + "documentation":"The error code.
" + }, + "message":{ + "shape":"ErrorMessage", + "documentation":"The error message.
" + }, + "details":{ + "shape":"DetailedErrors", + "documentation":"A list of detailed errors.
" + } + }, + "documentation":"Contains the details of an IoT SiteWise error.
" + }, + "ErrorMessage":{"type":"string"}, + "ErrorReportLocation":{ + "type":"structure", + "required":[ + "bucket", + "prefix" + ], + "members":{ + "bucket":{ + "shape":"Bucket", + "documentation":"The name of the Amazon S3 bucket to which errors associated with the bulk import job are sent.
" + }, + "prefix":{ + "shape":"String", + "documentation":"Amazon S3 uses the prefix as a folder name to organize data in the bucket. Each Amazon S3 object has a key that is its unique identifier in the bucket. Each object in a bucket has exactly one key. The prefix must end with a forward slash (/). For more information, see Organizing objects using prefixes in the Amazon Simple Storage Service User Guide.
" + } + }, + "documentation":"The Amazon S3 destination where errors associated with the job creation request are saved.
" + }, + "ExceptionMessage":{"type":"string"}, + "ExcludeProperties":{"type":"boolean"}, + "ExecuteActionRequest":{ + "type":"structure", + "required":[ + "targetResource", + "actionDefinitionId", + "actionPayload" + ], + "members":{ + "targetResource":{ + "shape":"TargetResource", + "documentation":"The resource the action will be taken on.
" + }, + "actionDefinitionId":{ + "shape":"ID", + "documentation":"The ID of the action definition.
" + }, + "actionPayload":{ + "shape":"ActionPayload", + "documentation":"The JSON payload of the action.
" + }, + "clientToken":{ + "shape":"ClientToken", + "documentation":"A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.
" + } + } + }, + "ExecuteActionResponse":{ + "type":"structure", + "required":["actionId"], + "members":{ + "actionId":{ + "shape":"ID", + "documentation":"The ID of the action.
" + } + } + }, + "ExecuteQueryMaxResults":{ + "type":"integer", + "min":1 + }, + "ExecuteQueryNextToken":{ + "type":"string", + "max":4096, + "min":1 + }, + "ExecuteQueryRequest":{ + "type":"structure", + "required":["queryStatement"], + "members":{ + "queryStatement":{ + "shape":"QueryStatement", + "documentation":"The IoT SiteWise query statement.
" }, - "message":{ - "shape":"ErrorMessage", - "documentation":"The error message.
" + "nextToken":{ + "shape":"ExecuteQueryNextToken", + "documentation":"The string that specifies the next page of results.
" }, - "details":{ - "shape":"DetailedErrors", - "documentation":"A list of detailed errors.
" + "maxResults":{ + "shape":"ExecuteQueryMaxResults", + "documentation":"The maximum number of results to return at one time. The default is 25.
" } - }, - "documentation":"Contains the details of an IoT SiteWise error.
" + } }, - "ErrorMessage":{"type":"string"}, - "ErrorReportLocation":{ + "ExecuteQueryResponse":{ "type":"structure", - "required":[ - "bucket", - "prefix" - ], "members":{ - "bucket":{ - "shape":"Bucket", - "documentation":"The name of the Amazon S3 bucket to which errors associated with the bulk import job are sent.
" + "columns":{ + "shape":"ColumnsList", + "documentation":"Represents a single column in the query results.
" }, - "prefix":{ - "shape":"String", - "documentation":"Amazon S3 uses the prefix as a folder name to organize data in the bucket. Each Amazon S3 object has a key that is its unique identifier in the bucket. Each object in a bucket has exactly one key. The prefix must end with a forward slash (/). For more information, see Organizing objects using prefixes in the Amazon Simple Storage Service User Guide.
" + "rows":{ + "shape":"Rows", + "documentation":"Represents a single row in the query results.
" + }, + "nextToken":{ + "shape":"ExecuteQueryNextToken", + "documentation":"The string that specifies the next page of results.
" } - }, - "documentation":"The Amazon S3 destination where errors associated with the job creation request are saved.
" + } }, - "ExceptionMessage":{"type":"string"}, - "ExcludeProperties":{"type":"boolean"}, "Expression":{ "type":"string", "max":1024, @@ -4757,6 +5852,12 @@ "type":"list", "member":{"shape":"ExpressionVariable"} }, + "ExternalId":{ + "type":"string", + "max":128, + "min":2, + "pattern":"[a-zA-Z0-9_][a-zA-Z_\\-0-9.:]*[a-zA-Z0-9_]+" + }, "File":{ "type":"structure", "required":[ @@ -4784,10 +5885,14 @@ "members":{ "csv":{ "shape":"Csv", - "documentation":"The .csv file format.
" + "documentation":"The file is in .CSV format.
" + }, + "parquet":{ + "shape":"Parquet", + "documentation":"The file is in parquet format.
" } }, - "documentation":"The file format of the data.
" + "documentation":"The file format of the data in S3.
" }, "Files":{ "type":"list", @@ -4895,13 +6000,13 @@ "members":{ "assetId":{ "shape":"ID", - "documentation":"The ID of the asset.
", + "documentation":"The ID of the asset, in UUID format.
", "location":"querystring", "locationName":"assetId" }, "propertyId":{ "shape":"ID", - "documentation":"The ID of the asset property.
", + "documentation":"The ID of the asset property, in UUID format.
", "location":"querystring", "locationName":"propertyId" }, @@ -4955,7 +6060,7 @@ }, "maxResults":{ "shape":"GetAssetPropertyValueAggregatesMaxResults", - "documentation":"The maximum number of results to return for each paginated request. A result set is returned in the two cases, whichever occurs first.
The size of the result set is equal to 1 MB.
The number of data points in the result set is equal to the value of maxResults
. The maximum value of maxResults
is 250.
The maximum number of results to return for each paginated request. A result set is returned in the two cases, whichever occurs first.
The size of the result set is equal to 1 MB.
The number of data points in the result set is equal to the value of maxResults
. The maximum value of maxResults
is 2500.
The ID of the asset.
", + "documentation":"The ID of the asset, in UUID format.
", "location":"querystring", "locationName":"assetId" }, "propertyId":{ "shape":"ID", - "documentation":"The ID of the asset property.
", + "documentation":"The ID of the asset property, in UUID format.
", "location":"querystring", "locationName":"propertyId" }, @@ -5061,13 +6166,13 @@ "members":{ "assetId":{ "shape":"ID", - "documentation":"The ID of the asset.
", + "documentation":"The ID of the asset, in UUID format.
", "location":"querystring", "locationName":"assetId" }, "propertyId":{ "shape":"ID", - "documentation":"The ID of the asset property.
", + "documentation":"The ID of the asset property, in UUID format.
", "location":"querystring", "locationName":"propertyId" }, @@ -5100,13 +6205,13 @@ "members":{ "assetId":{ "shape":"ID", - "documentation":"The ID of the asset.
", + "documentation":"The ID of the asset, in UUID format.
", "location":"querystring", "locationName":"assetId" }, "propertyId":{ "shape":"ID", - "documentation":"The ID of the asset property.
", + "documentation":"The ID of the asset property, in UUID format.
", "location":"querystring", "locationName":"propertyId" }, @@ -5279,7 +6384,7 @@ "documentation":"An IAM role identity.
" } }, - "documentation":"Contains an identity that can access an IoT SiteWise Monitor resource.
Currently, you can't use Amazon Web Services APIs to retrieve IAM Identity Center identity IDs. You can find the IAM Identity Center identity IDs in the URL of user and group pages in the IAM Identity Center console.
Contains an identity that can access an IoT SiteWise Monitor resource.
Currently, you can't use Amazon Web Services API operations to retrieve IAM Identity Center identity IDs. You can find the IAM Identity Center identity IDs in the URL of user and group pages in the IAM Identity Center console.
The file format of the data in Amazon S3.
" + "documentation":"The file format of the data in S3.
" } }, "documentation":"Contains the configuration information of a job, such as the file format used to save data in Amazon S3.
" @@ -5452,10 +6557,10 @@ }, "status":{ "shape":"JobStatus", - "documentation":"The status of the bulk import job can be one of following values.
PENDING
– IoT SiteWise is waiting for the current bulk import job to finish.
CANCELLED
– The bulk import job has been canceled.
RUNNING
– IoT SiteWise is processing your request to import your data from Amazon S3.
COMPLETED
– IoT SiteWise successfully completed your request to import data from Amazon S3.
FAILED
– IoT SiteWise couldn't process your request to import data from Amazon S3. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.
COMPLETED_WITH_FAILURES
– IoT SiteWise completed your request to import data from Amazon S3 with errors. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.
The status of the bulk import job can be one of following values:
PENDING
– IoT SiteWise is waiting for the current bulk import job to finish.
CANCELLED
– The bulk import job has been canceled.
RUNNING
– IoT SiteWise is processing your request to import your data from Amazon S3.
COMPLETED
– IoT SiteWise successfully completed your request to import data from Amazon S3.
FAILED
– IoT SiteWise couldn't process your request to import data from Amazon S3. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.
COMPLETED_WITH_FAILURES
– IoT SiteWise completed your request to import data from Amazon S3 with errors. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.
Contains a job summary information.
" + "documentation":"Contains the job summary information.
" }, "KmsKeyId":{ "type":"string", @@ -5533,6 +6638,94 @@ } } }, + "ListActionsRequest":{ + "type":"structure", + "required":[ + "targetResourceType", + "targetResourceId" + ], + "members":{ + "targetResourceType":{ + "shape":"TargetResourceType", + "documentation":"The type of resource.
", + "location":"querystring", + "locationName":"targetResourceType" + }, + "targetResourceId":{ + "shape":"CustomID", + "documentation":"The ID of the target resource.
", + "location":"querystring", + "locationName":"targetResourceId" + }, + "nextToken":{ + "shape":"NextToken", + "documentation":"The token to be used for the next set of paginated results.
", + "location":"querystring", + "locationName":"nextToken" + }, + "maxResults":{ + "shape":"MaxResults", + "documentation":"The maximum number of results to return for each paginated request.
", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListActionsResponse":{ + "type":"structure", + "required":[ + "actionSummaries", + "nextToken" + ], + "members":{ + "actionSummaries":{ + "shape":"ActionSummaries", + "documentation":"A list that summarizes the actions associated with the specified asset.
" + }, + "nextToken":{ + "shape":"NextToken", + "documentation":"The token for the next set of results, or null if there are no additional results.
" + } + } + }, + "ListAssetModelCompositeModelsRequest":{ + "type":"structure", + "required":["assetModelId"], + "members":{ + "assetModelId":{ + "shape":"CustomID", + "documentation":"The ID of the asset model. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The token to be used for the next set of paginated results.
", + "location":"querystring", + "locationName":"nextToken" + }, + "maxResults":{ + "shape":"MaxResults", + "documentation":"The maximum number of results to return for each paginated request.
Default: 50
", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListAssetModelCompositeModelsResponse":{ + "type":"structure", + "required":["assetModelCompositeModelSummaries"], + "members":{ + "assetModelCompositeModelSummaries":{ + "shape":"AssetModelCompositeModelSummaries", + "documentation":"A list that summarizes each composite model.
" + }, + "nextToken":{ + "shape":"NextToken", + "documentation":"The token for the next set of results, or null if there are no additional results.
" + } + } + }, "ListAssetModelPropertiesFilter":{ "type":"string", "enum":[ @@ -5545,8 +6738,8 @@ "required":["assetModelId"], "members":{ "assetModelId":{ - "shape":"ID", - "documentation":"The ID of the asset model.
", + "shape":"CustomID", + "documentation":"The ID of the asset model. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The maximum number of results to return for each paginated request.
Default: 50
", "location":"querystring", "locationName":"maxResults" + }, + "assetModelTypes":{ + "shape":"ListAssetModelsTypeFilter", + "documentation":"The type of asset model.
ASSET_MODEL – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model.
COMPONENT_MODEL – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model.
The ID of the asset.
", + "shape":"CustomID", + "documentation":"The ID of the asset. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the asset.
", + "shape":"CustomID", + "documentation":"The ID of the asset. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the asset model by which to filter the list of assets. This parameter is required if you choose ALL
for filter
.
The ID of the asset model by which to filter the list of assets. This parameter is required if you choose ALL
for filter
. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the asset to query.
", + "shape":"CustomID", + "documentation":"The ID of the asset to query. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the hierarchy by which child assets are associated to the asset. To find a hierarchy ID, use the DescribeAsset or DescribeAssetModel operations. This parameter is required if you choose CHILD
for traversalDirection
.
For more information, see Asset hierarchies in the IoT SiteWise User Guide.
", + "shape":"CustomID", + "documentation":"The ID of the hierarchy by which child assets are associated to the asset. (This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.) To find a hierarchy ID, use the DescribeAsset or DescribeAssetModel operations. This parameter is required if you choose CHILD
for traversalDirection
.
For more information, see Asset hierarchies in the IoT SiteWise User Guide.
", "location":"querystring", "locationName":"hierarchyId" }, @@ -5862,6 +7065,44 @@ } } }, + "ListCompositionRelationshipsRequest":{ + "type":"structure", + "required":["assetModelId"], + "members":{ + "assetModelId":{ + "shape":"ID", + "documentation":"The ID of the asset model. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The token to be used for the next set of paginated results.
", + "location":"querystring", + "locationName":"nextToken" + }, + "maxResults":{ + "shape":"MaxResults", + "documentation":"The maximum number of results to return for each paginated request.
Default: 50
", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListCompositionRelationshipsResponse":{ + "type":"structure", + "required":["compositionRelationshipSummaries"], + "members":{ + "compositionRelationshipSummaries":{ + "shape":"CompositionRelationshipSummaries", + "documentation":"A list that summarizes each composition relationship.
" + }, + "nextToken":{ + "shape":"NextToken", + "documentation":"The token for the next set of results, or null if there are no additional results.
" + } + } + }, "ListDashboardsRequest":{ "type":"structure", "required":["projectId"], @@ -6074,8 +7315,8 @@ "locationName":"maxResults" }, "assetId":{ - "shape":"ID", - "documentation":"The ID of the asset in which the asset property was created.
", + "shape":"CustomID", + "documentation":"The ID of the asset in which the asset property was created. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
A parquet file.
" + }, "Permission":{ "type":"string", "enum":[ @@ -6451,6 +7702,14 @@ "type":{ "shape":"PropertyType", "documentation":"The property type (see PropertyType
). A property contains one type.
The structured path to the property from the root of the asset.
" + }, + "externalId":{ + "shape":"ExternalId", + "documentation":"The external ID of the asset property. For more information, see Using external IDs in the IoT SiteWise User Guide.
" } }, "documentation":"Contains asset property information.
" @@ -6628,7 +7887,15 @@ "shape":"DisassociatedDataStorageState", "documentation":"Contains the storage configuration for time series (data streams) that aren't associated with asset properties. The disassociatedDataStorage
can be one of the following values:
ENABLED
– IoT SiteWise accepts time series that aren't associated with asset properties.
After the disassociatedDataStorage
is enabled, you can't disable it.
DISABLED
– IoT SiteWise doesn't accept time series (data streams) that aren't associated with asset properties.
For more information, see Data streams in the IoT SiteWise User Guide.
" }, - "retentionPeriod":{"shape":"RetentionPeriod"} + "retentionPeriod":{"shape":"RetentionPeriod"}, + "warmTier":{ + "shape":"WarmTierState", + "documentation":"A service managed storage tier optimized for analytical queries. It stores periodically uploaded, buffered and historical data ingested with the CreaeBulkImportJob API.
" + }, + "warmTierRetentionPeriod":{ + "shape":"WarmTierRetentionPeriod", + "documentation":"Set this period to specify how long your data is stored in the warm tier before it is deleted. You can set this only if cold tier is enabled.
" + } } }, "PutStorageConfigurationResponse":{ @@ -6651,7 +7918,15 @@ "documentation":"Contains the storage configuration for time series (data streams) that aren't associated with asset properties. The disassociatedDataStorage
can be one of the following values:
ENABLED
– IoT SiteWise accepts time series that aren't associated with asset properties.
After the disassociatedDataStorage
is enabled, you can't disable it.
DISABLED
– IoT SiteWise doesn't accept time series (data streams) that aren't associated with asset properties.
For more information, see Data streams in the IoT SiteWise User Guide.
" }, "retentionPeriod":{"shape":"RetentionPeriod"}, - "configurationStatus":{"shape":"ConfigurationStatus"} + "configurationStatus":{"shape":"ConfigurationStatus"}, + "warmTier":{ + "shape":"WarmTierState", + "documentation":"A service managed storage tier optimized for analytical queries. It stores periodically uploaded, buffered and historical data ingested with the CreaeBulkImportJob API.
" + }, + "warmTierRetentionPeriod":{ + "shape":"WarmTierRetentionPeriod", + "documentation":"Set this period to specify how long your data is stored in the warm tier before it is deleted. You can set this only if cold tier is enabled.
" + } } }, "Qualities":{ @@ -6668,6 +7943,20 @@ "UNCERTAIN" ] }, + "QueryStatement":{ + "type":"string", + "min":1, + "pattern":"^[\\s\\S]+$" + }, + "QueryTimeoutException":{ + "type":"structure", + "members":{ + "message":{"shape":"errorMessage"} + }, + "documentation":"The query timed out.
", + "error":{"httpStatusCode":400}, + "exception":true + }, "Resolution":{ "type":"string", "max":3, @@ -6741,7 +8030,22 @@ "documentation":"If true, your data is kept indefinitely.
If configured to true
, you must not specify a value for the numberOfDays
parameter.
How many days your data is kept in the hot tier. By default, your data is kept indefinitely in the hot tier.
" + "documentation":"The number of days your data is kept in the hot tier. By default, your data is kept indefinitely in the hot tier.
" + }, + "Row":{ + "type":"structure", + "required":["data"], + "members":{ + "data":{ + "shape":"DatumList", + "documentation":"List of data points in a single row of the result set.
" + } + }, + "documentation":"Represents a single row in the query results.
" + }, + "Rows":{ + "type":"list", + "member":{"shape":"Row"} }, "SSOApplicationId":{ "type":"string", @@ -6749,6 +8053,17 @@ "min":1, "pattern":"^[!-~]*" }, + "ScalarType":{ + "type":"string", + "enum":[ + "BOOLEAN", + "INT", + "DOUBLE", + "TIMESTAMP", + "STRING" + ] + }, + "ScalarValue":{"type":"string"}, "ServiceUnavailableException":{ "type":"structure", "required":["message"], @@ -6815,6 +8130,21 @@ "max":256, "min":0 }, + "TargetResource":{ + "type":"structure", + "required":["assetId"], + "members":{ + "assetId":{ + "shape":"CustomID", + "documentation":"The ID of the asset, in UUID format.
" + } + }, + "documentation":"The resource the action will be taken on.
" + }, + "TargetResourceType":{ + "type":"string", + "enum":["ASSET"] + }, "ThrottlingException":{ "type":"structure", "required":["message"], @@ -6877,7 +8207,7 @@ }, "propertyId":{ "shape":"ID", - "documentation":"The ID of the asset property.
" + "documentation":"The ID of the asset property, in UUID format.
" }, "alias":{ "shape":"PropertyAlias", @@ -7064,6 +8394,63 @@ "members":{ } }, + "UpdateAssetModelCompositeModelRequest":{ + "type":"structure", + "required":[ + "assetModelId", + "assetModelCompositeModelId", + "assetModelCompositeModelName" + ], + "members":{ + "assetModelId":{ + "shape":"CustomID", + "documentation":"The ID of the asset model, in UUID format.
", + "location":"uri", + "locationName":"assetModelId" + }, + "assetModelCompositeModelId":{ + "shape":"CustomID", + "documentation":"The ID of a composite model on this asset model.
", + "location":"uri", + "locationName":"assetModelCompositeModelId" + }, + "assetModelCompositeModelExternalId":{ + "shape":"ExternalId", + "documentation":"An external ID to assign to the asset model. You can only set the external ID of the asset model if it wasn't set when it was created, or you're setting it to the exact same thing as when it was created.
" + }, + "assetModelCompositeModelDescription":{ + "shape":"Description", + "documentation":"A description for the composite model.
" + }, + "assetModelCompositeModelName":{ + "shape":"Name", + "documentation":"A unique, friendly name for the composite model.
" + }, + "clientToken":{ + "shape":"ClientToken", + "documentation":"A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.
", + "idempotencyToken":true + }, + "assetModelCompositeModelProperties":{ + "shape":"AssetModelProperties", + "documentation":"The property definitions of the composite model. For more information, see <LINK>.
You can specify up to 200 properties per composite model. For more information, see Quotas in the IoT SiteWise User Guide.
" + } + } + }, + "UpdateAssetModelCompositeModelResponse":{ + "type":"structure", + "required":[ + "assetModelCompositeModelPath", + "assetModelStatus" + ], + "members":{ + "assetModelCompositeModelPath":{ + "shape":"AssetModelCompositeModelPath", + "documentation":"The path to the composite model listing the parent composite models.
" + }, + "assetModelStatus":{"shape":"AssetModelStatus"} + } + }, "UpdateAssetModelRequest":{ "type":"structure", "required":[ @@ -7072,8 +8459,8 @@ ], "members":{ "assetModelId":{ - "shape":"ID", - "documentation":"The ID of the asset model to update.
", + "shape":"CustomID", + "documentation":"The ID of the asset model to update. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The composite asset models that are part of this asset model. Composite asset models are asset models that contain specific properties. Each composite model has a type that defines the properties that the composite model supports. Use composite asset models to define alarms on this asset model.
" + "documentation":"The composite models that are part of this asset model. It groups properties (such as attributes, measurements, transforms, and metrics) and child composite models that model parts of your industrial equipment. Each composite model has a type that defines the properties that the composite model supports. Use composite models to define alarms on this asset model.
When creating custom composite models, you need to use CreateAssetModelCompositeModel. For more information, see <LINK>.
A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.
", "idempotencyToken":true + }, + "assetModelExternalId":{ + "shape":"ExternalId", + "documentation":"An external ID to assign to the asset model. The asset model must not already have an external ID. The external ID must be unique within your Amazon Web Services account. For more information, see Using external IDs in the IoT SiteWise User Guide.
" } } }, @@ -7122,14 +8513,14 @@ ], "members":{ "assetId":{ - "shape":"ID", - "documentation":"The ID of the asset to be updated.
", + "shape":"CustomID", + "documentation":"The ID of the asset to be updated. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the asset property to be updated.
", + "shape":"CustomID", + "documentation":"The ID of the asset property to be updated. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
The ID of the asset to update.
", + "shape":"CustomID", + "documentation":"The ID of the asset to update. This can be either the actual ID in UUID format, or else externalId:
followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.
A description for the asset.
" + }, + "assetExternalId":{ + "shape":"ExternalId", + "documentation":"An external ID to assign to the asset. The asset must not already have an external ID. The external ID must be unique within your Amazon Web Services account. For more information, see Using external IDs in the IoT SiteWise User Guide.
" } } }, @@ -7395,6 +8790,15 @@ }, "documentation":"Contains information for a user identity in an access policy.
" }, + "ValidationException":{ + "type":"structure", + "members":{ + "message":{"shape":"errorMessage"} + }, + "documentation":"The validation failed for this query.
", + "error":{"httpStatusCode":400}, + "exception":true + }, "VariableName":{ "type":"string", "max":64, @@ -7403,15 +8807,18 @@ }, "VariableValue":{ "type":"structure", - "required":["propertyId"], "members":{ "propertyId":{ "shape":"Macro", - "documentation":"The ID of the property to use as the variable. You can use the property name
if it's from the same asset model.
The ID of the property to use as the variable. You can use the property name
if it's from the same asset model. If the property has an external ID, you can specify externalId:
followed by the external ID. For more information, see Using external IDs in the IoT SiteWise User Guide.
The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID.
You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same propertyId
. For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the IoT SiteWise User Guide.
The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify externalId:
followed by the external ID. For more information, see Using external IDs in the IoT SiteWise User Guide.
You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same propertyId
. For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the IoT SiteWise User Guide.
The path of the property.
" } }, "documentation":"Identifies a property value used in an expression.
" @@ -7425,7 +8832,7 @@ }, "integerValue":{ "shape":"PropertyValueIntegerValue", - "documentation":"Asset property data of type integer (whole number).
" + "documentation":"Asset property data of type integer (number that's greater than or equal to zero).
" }, "doubleValue":{ "shape":"PropertyValueDoubleValue", @@ -7437,7 +8844,29 @@ } }, "documentation":"Contains an asset property value (of a single type only).
" - } + }, + "WarmTierRetentionPeriod":{ + "type":"structure", + "members":{ + "numberOfDays":{ + "shape":"NumberOfDays", + "documentation":"The number of days the data is stored in the warm tier.
" + }, + "unlimited":{ + "shape":"Unlimited", + "documentation":"If set to true, the data is stored indefinitely in the warm tier.
" + } + }, + "documentation":"Set this period to specify how long your data is stored in the warm tier before it is deleted. You can set this only if cold tier is enabled.
" + }, + "WarmTierState":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED" + ] + }, + "errorMessage":{"type":"string"} }, "documentation":"Welcome to the IoT SiteWise API Reference. IoT SiteWise is an Amazon Web Services service that connects Industrial Internet of Things (IIoT) devices to the power of the Amazon Web Services Cloud. For more information, see the IoT SiteWise User Guide. For information about IoT SiteWise quotas, see Quotas in the IoT SiteWise User Guide.
" } diff --git a/botocore/data/iottwinmaker/2021-11-29/endpoint-rule-set-1.json b/botocore/data/iottwinmaker/2021-11-29/endpoint-rule-set-1.json index 4cd59283f1..3897194e1e 100644 --- a/botocore/data/iottwinmaker/2021-11-29/endpoint-rule-set-1.json +++ b/botocore/data/iottwinmaker/2021-11-29/endpoint-rule-set-1.json @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff --git a/botocore/data/iottwinmaker/2021-11-29/service-2.json b/botocore/data/iottwinmaker/2021-11-29/service-2.json index b7e47b3cdb..de4d97bc0d 100644 --- a/botocore/data/iottwinmaker/2021-11-29/service-2.json +++ b/botocore/data/iottwinmaker/2021-11-29/service-2.json @@ -30,6 +30,26 @@ "documentation":"Sets values for multiple time series properties.
", "endpoint":{"hostPrefix":"data."} }, + "CancelMetadataTransferJob":{ + "name":"CancelMetadataTransferJob", + "http":{ + "method":"PUT", + "requestUri":"/metadata-transfer-jobs/{metadataTransferJobId}/cancel", + "responseCode":200 + }, + "input":{"shape":"CancelMetadataTransferJobRequest"}, + "output":{"shape":"CancelMetadataTransferJobResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"} + ], + "documentation":"Cancels the metadata transfer job.
", + "endpoint":{"hostPrefix":"api."} + }, "CreateComponentType":{ "name":"CreateComponentType", "http":{ @@ -70,6 +90,27 @@ "documentation":"Creates an entity.
", "endpoint":{"hostPrefix":"api."} }, + "CreateMetadataTransferJob":{ + "name":"CreateMetadataTransferJob", + "http":{ + "method":"POST", + "requestUri":"/metadata-transfer-jobs", + "responseCode":200 + }, + "input":{"shape":"CreateMetadataTransferJobRequest"}, + "output":{"shape":"CreateMetadataTransferJobResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "documentation":"Creates a new metadata transfer job.
", + "endpoint":{"hostPrefix":"api."} + }, "CreateScene":{ "name":"CreateScene", "http":{ @@ -243,7 +284,7 @@ {"shape":"ValidationException"}, {"shape":"ServiceQuotaExceededException"} ], - "documentation":"Run queries to access information from your knowledge graph of entities within individual workspaces.
", + "documentation":"Run queries to access information from your knowledge graph of entities within individual workspaces.
The ExecuteQuery action only works with Amazon Web Services Java SDK2. ExecuteQuery will not work with any Amazon Web Services Java SDK version < 2.x.
Retrieves information about an entity.
", "endpoint":{"hostPrefix":"api."} }, + "GetMetadataTransferJob":{ + "name":"GetMetadataTransferJob", + "http":{ + "method":"GET", + "requestUri":"/metadata-transfer-jobs/{metadataTransferJobId}", + "responseCode":200 + }, + "input":{"shape":"GetMetadataTransferJobRequest"}, + "output":{"shape":"GetMetadataTransferJobResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ], + "documentation":"Gets a nmetadata transfer job.
", + "endpoint":{"hostPrefix":"api."} + }, "GetPricingPlan":{ "name":"GetPricingPlan", "http":{ @@ -420,6 +480,25 @@ "documentation":"Lists all component types in a workspace.
", "endpoint":{"hostPrefix":"api."} }, + "ListComponents":{ + "name":"ListComponents", + "http":{ + "method":"POST", + "requestUri":"/workspaces/{workspaceId}/entities/{entityId}/components-list", + "responseCode":200 + }, + "input":{"shape":"ListComponentsRequest"}, + "output":{"shape":"ListComponentsResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ], + "documentation":"This API lists the components of an entity.
", + "endpoint":{"hostPrefix":"api."} + }, "ListEntities":{ "name":"ListEntities", "http":{ @@ -438,6 +517,43 @@ "documentation":"Lists all entities in a workspace.
", "endpoint":{"hostPrefix":"api."} }, + "ListMetadataTransferJobs":{ + "name":"ListMetadataTransferJobs", + "http":{ + "method":"POST", + "requestUri":"/metadata-transfer-jobs-list", + "responseCode":200 + }, + "input":{"shape":"ListMetadataTransferJobsRequest"}, + "output":{"shape":"ListMetadataTransferJobsResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ], + "documentation":"Lists the metadata transfer jobs.
", + "endpoint":{"hostPrefix":"api."} + }, + "ListProperties":{ + "name":"ListProperties", + "http":{ + "method":"POST", + "requestUri":"/workspaces/{workspaceId}/properties-list", + "responseCode":200 + }, + "input":{"shape":"ListPropertiesRequest"}, + "output":{"shape":"ListPropertiesResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ], + "documentation":"This API lists the properties of a component.
", + "endpoint":{"hostPrefix":"api."} + }, "ListScenes":{ "name":"ListScenes", "http":{ @@ -761,6 +877,49 @@ "min":1, "pattern":".*" }, + "CancelMetadataTransferJobRequest":{ + "type":"structure", + "required":["metadataTransferJobId"], + "members":{ + "metadataTransferJobId":{ + "shape":"Id", + "documentation":"The metadata transfer job Id.
", + "location":"uri", + "locationName":"metadataTransferJobId" + } + } + }, + "CancelMetadataTransferJobResponse":{ + "type":"structure", + "required":[ + "metadataTransferJobId", + "arn", + "updateDateTime", + "status" + ], + "members":{ + "metadataTransferJobId":{ + "shape":"Id", + "documentation":"The metadata transfer job Id.
" + }, + "arn":{ + "shape":"TwinMakerArn", + "documentation":"The metadata transfer job ARN.
" + }, + "updateDateTime":{ + "shape":"Timestamp", + "documentation":"Used to update the DateTime property.
" + }, + "status":{ + "shape":"MetadataTransferJobStatus", + "documentation":"The metadata transfer job's status.
" + }, + "progress":{ + "shape":"MetadataTransferJobProgress", + "documentation":"The metadata transfer job's progress.
" + } + } + }, "ColumnDescription":{ "type":"structure", "members":{ @@ -791,6 +950,12 @@ "VALUE" ] }, + "ComponentPath":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"[a-zA-Z_\\-0-9/]+" + }, "ComponentPropertyGroupRequest":{ "type":"structure", "members":{ @@ -898,10 +1063,69 @@ "syncSource":{ "shape":"SyncSource", "documentation":"The syncSource of the sync job, if this entity was created by a sync job.
" + }, + "areAllPropertiesReturned":{ + "shape":"Boolean", + "documentation":"This flag notes whether all properties of the component are returned in the API response. The maximum number of properties returned is 800.
" + }, + "compositeComponents":{ + "shape":"CompositeComponentResponse", + "documentation":"This lists objects that contain information about the compositeComponents
.
This flag notes whether all compositeComponents
are returned in the API response.
An object that returns information about a component type create or update request.
" }, + "ComponentSummaries":{ + "type":"list", + "member":{"shape":"ComponentSummary"} + }, + "ComponentSummary":{ + "type":"structure", + "required":[ + "componentName", + "componentTypeId", + "status" + ], + "members":{ + "componentName":{ + "shape":"Name", + "documentation":"The name of the component.
" + }, + "componentTypeId":{ + "shape":"ComponentTypeId", + "documentation":"The ID of the component type.
" + }, + "definedIn":{ + "shape":"String", + "documentation":"The name of the property definition set in the request.
" + }, + "description":{ + "shape":"Description", + "documentation":"The description of the component request.
" + }, + "propertyGroups":{ + "shape":"ComponentPropertyGroupResponses", + "documentation":"The property groups.
" + }, + "status":{ + "shape":"Status", + "documentation":"The status of the component type.
" + }, + "syncSource":{ + "shape":"SyncSource", + "documentation":"The syncSource
of the sync job, if this entity was created by a sync job.
This string specifies the path to the composite component, starting from the top-level component.
" + } + }, + "documentation":"An object that returns information about a component summary.
" + }, "ComponentTypeId":{ "type":"string", "max":256, @@ -1007,6 +1231,95 @@ "key":{"shape":"Name"}, "value":{"shape":"ComponentRequest"} }, + "CompositeComponentRequest":{ + "type":"structure", + "members":{ + "description":{ + "shape":"Description", + "documentation":"The description of the component type.
" + }, + "properties":{ + "shape":"PropertyRequests", + "documentation":"This is an object that maps strings to the properties to set in the component type. Each string in the mapping must be unique to this object.
" + }, + "propertyGroups":{ + "shape":"ComponentPropertyGroupRequests", + "documentation":"The property groups.
" + } + }, + "documentation":"An object that sets information about the composite component update request.
" + }, + "CompositeComponentResponse":{ + "type":"map", + "key":{"shape":"Name"}, + "value":{"shape":"ComponentSummary"} + }, + "CompositeComponentTypeRequest":{ + "type":"structure", + "members":{ + "componentTypeId":{ + "shape":"ComponentTypeId", + "documentation":"This is the componentTypeId
that the compositeComponentType
refers to.
An object that sets information about the composite component types of a component type.
" + }, + "CompositeComponentTypeResponse":{ + "type":"structure", + "members":{ + "componentTypeId":{ + "shape":"ComponentTypeId", + "documentation":"This is the componentTypeId
that this compositeComponentType
refers to.
This boolean indicates whether this compositeComponentType
is inherited from its parent.
An object that returns information about the composite component types of a component type.
" + }, + "CompositeComponentTypesRequest":{ + "type":"map", + "key":{"shape":"Name"}, + "value":{"shape":"CompositeComponentTypeRequest"} + }, + "CompositeComponentTypesResponse":{ + "type":"map", + "key":{"shape":"Name"}, + "value":{"shape":"CompositeComponentTypeResponse"} + }, + "CompositeComponentUpdateRequest":{ + "type":"structure", + "members":{ + "updateType":{ + "shape":"ComponentUpdateType", + "documentation":"The update type of the component update request.
" + }, + "description":{ + "shape":"Description", + "documentation":"The description of the component type.
" + }, + "propertyUpdates":{ + "shape":"PropertyRequests", + "documentation":"An object that maps strings to the properties to set in the component type update. Each string in the mapping must be unique to this object.
" + }, + "propertyGroupUpdates":{ + "shape":"ComponentPropertyGroupRequests", + "documentation":"The property group updates.
" + } + }, + "documentation":"An object that sets information about the composite component update request.
" + }, + "CompositeComponentUpdatesMapRequest":{ + "type":"map", + "key":{"shape":"ComponentPath"}, + "value":{"shape":"CompositeComponentUpdateRequest"} + }, + "CompositeComponentsMapRequest":{ + "type":"map", + "key":{"shape":"ComponentPath"}, + "value":{"shape":"CompositeComponentRequest"} + }, "Configuration":{ "type":"map", "key":{"shape":"Name"}, @@ -1098,6 +1411,10 @@ "componentTypeName":{ "shape":"ComponentTypeName", "documentation":"A friendly name for the component type.
" + }, + "compositeComponentTypes":{ + "shape":"CompositeComponentTypesRequest", + "documentation":"This is an object that maps strings to compositeComponentTypes
of the componentType
. CompositeComponentType
is referenced by componentTypeId
.
An object that maps strings to the components in the entity. Each string in the mapping must be unique to this object.
" }, + "compositeComponents":{ + "shape":"CompositeComponentsMapRequest", + "documentation":"This is an object that maps strings to compositeComponent
updates in the request. Each key of the map represents the componentPath
of the compositeComponent
.
The ID of the entity's parent entity.
" @@ -1189,6 +1510,58 @@ } } }, + "CreateMetadataTransferJobRequest":{ + "type":"structure", + "required":[ + "sources", + "destination" + ], + "members":{ + "metadataTransferJobId":{ + "shape":"Id", + "documentation":"The metadata transfer job Id.
" + }, + "description":{ + "shape":"Description", + "documentation":"The metadata transfer job description.
" + }, + "sources":{ + "shape":"SourceConfigurations", + "documentation":"The metadata transfer job sources.
" + }, + "destination":{ + "shape":"DestinationConfiguration", + "documentation":"The metadata transfer job destination.
" + } + } + }, + "CreateMetadataTransferJobResponse":{ + "type":"structure", + "required":[ + "metadataTransferJobId", + "arn", + "creationDateTime", + "status" + ], + "members":{ + "metadataTransferJobId":{ + "shape":"Id", + "documentation":"The metadata transfer job Id.
" + }, + "arn":{ + "shape":"TwinMakerArn", + "documentation":"The metadata transfer job ARN.
" + }, + "creationDateTime":{ + "shape":"Timestamp", + "documentation":"The The metadata transfer job creation DateTime property.
" + }, + "status":{ + "shape":"MetadataTransferJobStatus", + "documentation":"The metadata transfer job response status.
" + } + } + }, "CreateSceneRequest":{ "type":"structure", "required":[ @@ -1300,11 +1673,7 @@ }, "CreateWorkspaceRequest":{ "type":"structure", - "required":[ - "workspaceId", - "s3Location", - "role" - ], + "required":["workspaceId"], "members":{ "workspaceId":{ "shape":"Id", @@ -1583,6 +1952,10 @@ "DeleteWorkspaceResponse":{ "type":"structure", "members":{ + "message":{ + "shape":"WorkspaceDeleteMessage", + "documentation":"The string that specifies the delete result for the workspace.
" + } } }, "Description":{ @@ -1591,6 +1964,33 @@ "min":0, "pattern":".*" }, + "DestinationConfiguration":{ + "type":"structure", + "required":["type"], + "members":{ + "type":{ + "shape":"DestinationType", + "documentation":"The destination type.
" + }, + "s3Configuration":{ + "shape":"S3DestinationConfiguration", + "documentation":"The metadata transfer job S3 configuration. [need to add S3 entity]
" + }, + "iotTwinMakerConfiguration":{ + "shape":"IotTwinMakerDestinationConfiguration", + "documentation":"The metadata transfer job Amazon Web Services IoT TwinMaker configuration.
" + } + }, + "documentation":"The [link to action] metadata transfer job destination configuration.
" + }, + "DestinationType":{ + "type":"string", + "enum":[ + "s3", + "iotsitewise", + "iottwinmaker" + ] + }, "Double":{ "type":"double", "box":true @@ -1615,6 +2015,10 @@ "shape":"Name", "documentation":"The name of the component.
" }, + "componentPath":{ + "shape":"ComponentPath", + "documentation":"This string specifies the path to the composite component, starting from the top-level component.
" + }, "externalIdProperty":{ "shape":"ExternalIdProperty", "documentation":"A mapping of external IDs to property names. External IDs uniquely identify properties from external data stores.
" @@ -1671,7 +2075,7 @@ }, "hasChildEntities":{ "shape":"Boolean", - "documentation":"A Boolean value that specifies whether the entity has child entities or not.
" + "documentation":"An eventual Boolean value that specifies whether the entity has child entities or not.
" }, "creationDateTime":{ "shape":"Timestamp", @@ -1697,7 +2101,10 @@ "INTERNAL_FAILURE", "SYNC_INITIALIZING_ERROR", "SYNC_CREATING_ERROR", - "SYNC_PROCESSING_ERROR" + "SYNC_PROCESSING_ERROR", + "SYNC_DELETING_ERROR", + "PROCESSING_ERROR", + "COMPOSITE_COMPONENT_FAILURE" ] }, "ErrorDetails":{ @@ -1749,7 +2156,7 @@ }, "maxResults":{ "shape":"QueryServiceMaxResults", - "documentation":"The maximum number of results to return at one time. The default is 25.
Valid Range: Minimum value of 1. Maximum value of 250.
" + "documentation":"The maximum number of results to return at one time. The default is 50.
" }, "nextToken":{ "shape":"NextToken", @@ -1789,6 +2196,72 @@ "key":{"shape":"String"}, "value":{"shape":"String"} }, + "FilterByAsset":{ + "type":"structure", + "members":{ + "assetId":{ + "shape":"Uuid", + "documentation":"Filter by asset Id.
" + }, + "assetExternalId":{ + "shape":"SiteWiseExternalId", + "documentation":"The external-Id property of an asset.
" + }, + "includeOffspring":{ + "shape":"Boolean", + "documentation":"Includes sub-assets.[need description hekp for this]
" + }, + "includeAssetModel":{ + "shape":"Boolean", + "documentation":"Boolean to include the asset model.
" + } + }, + "documentation":"Filter by asset. [TwinMaker asset]
" + }, + "FilterByAssetModel":{ + "type":"structure", + "members":{ + "assetModelId":{ + "shape":"Uuid", + "documentation":"The asset model Id.
" + }, + "assetModelExternalId":{ + "shape":"SiteWiseExternalId", + "documentation":"The external-Id property of an asset model.
" + }, + "includeOffspring":{ + "shape":"Boolean", + "documentation":"Include asset offspring. [need desc.]
" + }, + "includeAssets":{ + "shape":"Boolean", + "documentation":"Bolean to include assets.
" + } + }, + "documentation":"Filter by asset model.
" + }, + "FilterByComponentType":{ + "type":"structure", + "required":["componentTypeId"], + "members":{ + "componentTypeId":{ + "shape":"ComponentTypeId", + "documentation":"The component type Id.
" + } + }, + "documentation":"Filter by component type.
" + }, + "FilterByEntity":{ + "type":"structure", + "required":["entityId"], + "members":{ + "entityId":{ + "shape":"EntityId", + "documentation":"The entity Id.
" + } + }, + "documentation":"Vilter by entity.
" + }, "FunctionRequest":{ "type":"structure", "members":{ @@ -1940,6 +2413,10 @@ "componentTypeName":{ "shape":"ComponentTypeName", "documentation":"The component type name.
" + }, + "compositeComponentTypes":{ + "shape":"CompositeComponentTypesResponse", + "documentation":"This is an object that maps strings to compositeComponentTypes
of the componentType
. CompositeComponentType
is referenced by componentTypeId
.
The syncSource of the sync job, if this entity was created by a sync job.
" + }, + "areAllComponentsReturned":{ + "shape":"Boolean", + "documentation":"This flag notes whether all components are returned in the API response. The maximum number of components returned is 30.
" + } + } + }, + "GetMetadataTransferJobRequest":{ + "type":"structure", + "required":["metadataTransferJobId"], + "members":{ + "metadataTransferJobId":{ + "shape":"Id", + "documentation":"The metadata transfer job Id.
", + "location":"uri", + "locationName":"metadataTransferJobId" + } + } + }, + "GetMetadataTransferJobResponse":{ + "type":"structure", + "required":[ + "metadataTransferJobId", + "arn", + "sources", + "destination", + "metadataTransferJobRole", + "creationDateTime", + "updateDateTime", + "status" + ], + "members":{ + "metadataTransferJobId":{ + "shape":"Id", + "documentation":"The metadata transfer job Id.
" + }, + "arn":{ + "shape":"TwinMakerArn", + "documentation":"The metadata transfer job ARN.
" + }, + "description":{ + "shape":"Description", + "documentation":"The metadata transfer job description.
" + }, + "sources":{ + "shape":"SourceConfigurations", + "documentation":"The metadata transfer job's sources.
" + }, + "destination":{ + "shape":"DestinationConfiguration", + "documentation":"The metadata transfer job's destination.
" + }, + "metadataTransferJobRole":{ + "shape":"RoleArn", + "documentation":"The metadata transfer job's role.
" + }, + "reportUrl":{ + "shape":"String", + "documentation":"The metadata transfer job's report URL.
" + }, + "creationDateTime":{ + "shape":"Timestamp", + "documentation":"The metadata transfer job's creation DateTime property.
" + }, + "updateDateTime":{ + "shape":"Timestamp", + "documentation":"The metadata transfer job's update DateTime property.
" + }, + "status":{ + "shape":"MetadataTransferJobStatus", + "documentation":"The metadata transfer job's status.
" + }, + "progress":{ + "shape":"MetadataTransferJobProgress", + "documentation":"The metadata transfer job's progress.
" } } }, @@ -2068,6 +2620,10 @@ "shape":"Name", "documentation":"The name of the component.
" }, + "componentPath":{ + "shape":"ComponentPath", + "documentation":"This string specifies the path to the composite component, starting from the top-level component.
" + }, "componentTypeId":{ "shape":"ComponentTypeId", "documentation":"The ID of the component type.
" @@ -2143,6 +2699,10 @@ "shape":"Name", "documentation":"The name of the component whose property values the operation returns.
" }, + "componentPath":{ + "shape":"ComponentPath", + "documentation":"This string specifies the path to the composite component, starting from the top-level component.
" + }, "componentTypeId":{ "shape":"ComponentTypeId", "documentation":"The ID of the component type whose property values the operation returns.
" @@ -2351,8 +2911,6 @@ "required":[ "workspaceId", "arn", - "s3Location", - "role", "creationDateTime", "updateDateTime" ], @@ -2369,6 +2927,10 @@ "shape":"Description", "documentation":"The description of the workspace.
" }, + "linkedServices":{ + "shape":"LinkedServices", + "documentation":"A list of services that are linked to the workspace.
" + }, "s3Location":{ "shape":"S3Location", "documentation":"The ARN of the S3 bucket where resources associated with the workspace are stored.
" @@ -2412,32 +2974,106 @@ "members":{ "message":{"shape":"ErrorMessage"} }, - "documentation":"An unexpected error has occurred.
", - "error":{"httpStatusCode":500}, - "exception":true, - "fault":true + "documentation":"An unexpected error has occurred.
", + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true + }, + "InterpolationParameters":{ + "type":"structure", + "members":{ + "interpolationType":{ + "shape":"InterpolationType", + "documentation":"The interpolation type.
" + }, + "intervalInSeconds":{ + "shape":"IntervalInSeconds", + "documentation":"The interpolation time interval in seconds.
" + } + }, + "documentation":"An object that specifies how to interpolate data in a list.
" + }, + "InterpolationType":{ + "type":"string", + "enum":["LINEAR"] + }, + "IntervalInSeconds":{ + "type":"long", + "box":true + }, + "IotSiteWiseSourceConfiguration":{ + "type":"structure", + "members":{ + "filters":{ + "shape":"IotSiteWiseSourceConfigurationFilters", + "documentation":"The AWS IoT SiteWise soucre configuration filters.
" + } + }, + "documentation":"The metadata transfer job AWS IoT SiteWise source configuration.
" + }, + "IotSiteWiseSourceConfigurationFilter":{ + "type":"structure", + "members":{ + "filterByAssetModel":{ + "shape":"FilterByAssetModel", + "documentation":"Filter by asset model.
" + }, + "filterByAsset":{ + "shape":"FilterByAsset", + "documentation":"Filter by asset.
" + } + }, + "documentation":"The AWS IoT SiteWise soucre configuration filter.[need held with desc here]
", + "union":true + }, + "IotSiteWiseSourceConfigurationFilters":{ + "type":"list", + "member":{"shape":"IotSiteWiseSourceConfigurationFilter"} + }, + "IotTwinMakerDestinationConfiguration":{ + "type":"structure", + "required":["workspace"], + "members":{ + "workspace":{ + "shape":"TwinMakerArn", + "documentation":"The IoT TwinMaker workspace.
" + } + }, + "documentation":"The metadata transfer job AWS IoT TwinMaker destination configuration.
" + }, + "IotTwinMakerSourceConfiguration":{ + "type":"structure", + "required":["workspace"], + "members":{ + "workspace":{ + "shape":"TwinMakerArn", + "documentation":"The IoT TwinMaker workspace.
" + }, + "filters":{ + "shape":"IotTwinMakerSourceConfigurationFilters", + "documentation":"The metadata transfer job AWS IoT TwinMaker source configuration filters.
" + } + }, + "documentation":"The metadata transfer job AWS IoT TwinMaker source configuration.
" }, - "InterpolationParameters":{ + "IotTwinMakerSourceConfigurationFilter":{ "type":"structure", "members":{ - "interpolationType":{ - "shape":"InterpolationType", - "documentation":"The interpolation type.
" + "filterByComponentType":{ + "shape":"FilterByComponentType", + "documentation":"Filter by component type.
" }, - "intervalInSeconds":{ - "shape":"IntervalInSeconds", - "documentation":"The interpolation time interval in seconds.
" + "filterByEntity":{ + "shape":"FilterByEntity", + "documentation":"Filter by entity.
" } }, - "documentation":"An object that specifies how to interpolate data in a list.
" - }, - "InterpolationType":{ - "type":"string", - "enum":["LINEAR"] + "documentation":"The metadata transfer job AWS IoT TwinMaker source configuration filter.
", + "union":true }, - "IntervalInSeconds":{ - "type":"long", - "box":true + "IotTwinMakerSourceConfigurationFilters":{ + "type":"list", + "member":{"shape":"IotTwinMakerSourceConfigurationFilter"} }, "LambdaArn":{ "type":"string", @@ -2456,6 +3092,14 @@ }, "documentation":"The Lambda function.
" }, + "LinkedService":{ + "type":"string", + "pattern":"[a-zA-Z_0-9]+" + }, + "LinkedServices":{ + "type":"list", + "member":{"shape":"LinkedService"} + }, "ListComponentTypesFilter":{ "type":"structure", "members":{ @@ -2528,6 +3172,53 @@ } } }, + "ListComponentsRequest":{ + "type":"structure", + "required":[ + "workspaceId", + "entityId" + ], + "members":{ + "workspaceId":{ + "shape":"Id", + "documentation":"The workspace ID.
", + "location":"uri", + "locationName":"workspaceId" + }, + "entityId":{ + "shape":"EntityId", + "documentation":"The ID for the entity whose metadata (component/properties) is returned by the operation.
", + "location":"uri", + "locationName":"entityId" + }, + "componentPath":{ + "shape":"ComponentPath", + "documentation":"This string specifies the path to the composite component, starting from the top-level component.
" + }, + "maxResults":{ + "shape":"MaxResults", + "documentation":"The maximum number of results returned at one time. The default is 25.
" + }, + "nextToken":{ + "shape":"NextToken", + "documentation":"The string that specifies the next page of results.
" + } + } + }, + "ListComponentsResponse":{ + "type":"structure", + "required":["componentSummaries"], + "members":{ + "componentSummaries":{ + "shape":"ComponentSummaries", + "documentation":"A list of objects that contain information about the components.
" + }, + "nextToken":{ + "shape":"NextToken", + "documentation":"The string that specifies the next page of component results.
" + } + } + }, "ListEntitiesFilter":{ "type":"structure", "members":{ @@ -2588,6 +3279,117 @@ } } }, + "ListMetadataTransferJobsFilter":{ + "type":"structure", + "members":{ + "workspaceId":{ + "shape":"Id", + "documentation":"The workspace Id.
" + }, + "state":{ + "shape":"MetadataTransferJobState", + "documentation":"The filter state.
" + } + }, + "documentation":"The ListMetadataTransferJobs filter.
", + "union":true + }, + "ListMetadataTransferJobsFilters":{ + "type":"list", + "member":{"shape":"ListMetadataTransferJobsFilter"} + }, + "ListMetadataTransferJobsRequest":{ + "type":"structure", + "required":[ + "sourceType", + "destinationType" + ], + "members":{ + "sourceType":{ + "shape":"SourceType", + "documentation":"The metadata transfer job's source type.
" + }, + "destinationType":{ + "shape":"DestinationType", + "documentation":"The metadata transfer job's destination type.
" + }, + "filters":{ + "shape":"ListMetadataTransferJobsFilters", + "documentation":"An object that filters metadata transfer jobs.
" + }, + "nextToken":{ + "shape":"NextToken", + "documentation":"The string that specifies the next page of results.
" + }, + "maxResults":{ + "shape":"MaxResults", + "documentation":"The maximum number of results to return at one time.
" + } + } + }, + "ListMetadataTransferJobsResponse":{ + "type":"structure", + "required":["metadataTransferJobSummaries"], + "members":{ + "metadataTransferJobSummaries":{ + "shape":"MetadataTransferJobSummaries", + "documentation":"The metadata transfer job summaries.
" + }, + "nextToken":{ + "shape":"NextToken", + "documentation":"The string that specifies the next page of results.
" + } + } + }, + "ListPropertiesRequest":{ + "type":"structure", + "required":[ + "workspaceId", + "entityId" + ], + "members":{ + "workspaceId":{ + "shape":"Id", + "documentation":"The workspace ID.
", + "location":"uri", + "locationName":"workspaceId" + }, + "componentName":{ + "shape":"Name", + "documentation":"The name of the component whose properties are returned by the operation.
" + }, + "componentPath":{ + "shape":"ComponentPath", + "documentation":"This string specifies the path to the composite component, starting from the top-level component.
" + }, + "entityId":{ + "shape":"EntityId", + "documentation":"The ID for the entity whose metadata (component/properties) is returned by the operation.
" + }, + "maxResults":{ + "shape":"MaxResults", + "documentation":"The maximum number of results returned at one time. The default is 25.
" + }, + "nextToken":{ + "shape":"NextToken", + "documentation":"The string that specifies the next page of results.
" + } + } + }, + "ListPropertiesResponse":{ + "type":"structure", + "required":["propertySummaries"], + "members":{ + "propertySummaries":{ + "shape":"PropertySummaries", + "documentation":"A list of objects that contain information about the properties.
" + }, + "nextToken":{ + "shape":"NextToken", + "documentation":"The string that specifies the next page of property results.
" + } + } + }, "ListScenesRequest":{ "type":"structure", "required":["workspaceId"], @@ -2767,6 +3569,99 @@ "max":200, "min":0 }, + "MetadataTransferJobProgress":{ + "type":"structure", + "members":{ + "totalCount":{ + "shape":"Integer", + "documentation":"The total count. [of what]
" + }, + "succeededCount":{ + "shape":"Integer", + "documentation":"The succeeded count.
" + }, + "skippedCount":{ + "shape":"Integer", + "documentation":"The skipped count.
" + }, + "failedCount":{ + "shape":"Integer", + "documentation":"The failed count.
" + } + }, + "documentation":"The metadata transfer job's progress.
" + }, + "MetadataTransferJobState":{ + "type":"string", + "enum":[ + "VALIDATING", + "PENDING", + "RUNNING", + "CANCELLING", + "ERROR", + "COMPLETED", + "CANCELLED" + ] + }, + "MetadataTransferJobStatus":{ + "type":"structure", + "members":{ + "state":{ + "shape":"MetadataTransferJobState", + "documentation":"The metadata transfer job state.
" + }, + "error":{ + "shape":"ErrorDetails", + "documentation":"The metadata transfer job error.
" + }, + "queuedPosition":{ + "shape":"Integer", + "documentation":"The queued position.
" + } + }, + "documentation":"The metadata transfer job status.
" + }, + "MetadataTransferJobSummaries":{ + "type":"list", + "member":{"shape":"MetadataTransferJobSummary"} + }, + "MetadataTransferJobSummary":{ + "type":"structure", + "required":[ + "metadataTransferJobId", + "arn", + "creationDateTime", + "updateDateTime", + "status" + ], + "members":{ + "metadataTransferJobId":{ + "shape":"Id", + "documentation":"The metadata transfer job summary Id.
" + }, + "arn":{ + "shape":"TwinMakerArn", + "documentation":"The metadata transfer job summary ARN.
" + }, + "creationDateTime":{ + "shape":"Timestamp", + "documentation":"The metadata transfer job summary creation DateTime object.
" + }, + "updateDateTime":{ + "shape":"Timestamp", + "documentation":"The metadata transfer job summary update DateTime object
" + }, + "status":{ + "shape":"MetadataTransferJobStatus", + "documentation":"The metadata transfer job summary status.
" + }, + "progress":{ + "shape":"MetadataTransferJobProgress", + "documentation":"The metadata transfer job summary progess.
" + } + }, + "documentation":"The metadata transfer job summary.
" + }, "Name":{ "type":"string", "max":256, @@ -3151,6 +4046,10 @@ "value":{ "shape":"DataValue", "documentation":"The value of the property.
" + }, + "areAllPropertyValuesReturned":{ + "shape":"Boolean", + "documentation":"This flag notes whether all values of a list or map type property are returned in the API response. The maximum number of values per property returned is 50.
" } }, "documentation":"An object that contains information about a property response.
" @@ -3160,6 +4059,33 @@ "key":{"shape":"Name"}, "value":{"shape":"PropertyResponse"} }, + "PropertySummaries":{ + "type":"list", + "member":{"shape":"PropertySummary"} + }, + "PropertySummary":{ + "type":"structure", + "required":["propertyName"], + "members":{ + "definition":{ + "shape":"PropertyDefinitionResponse", + "documentation":"This is the schema for the property.
" + }, + "propertyName":{ + "shape":"Name", + "documentation":"This is the name of the property.
" + }, + "value":{ + "shape":"DataValue", + "documentation":"This is the value for the property.
" + }, + "areAllPropertyValuesReturned":{ + "shape":"Boolean", + "documentation":"This flag notes whether all values of a list or map type property are returned in the API response. The maximum number of values per property returned is 50.
" + } + }, + "documentation":"This is an object that contains the information of a property.
" + }, "PropertyTableValue":{ "type":"map", "key":{"shape":"Name"}, @@ -3333,12 +4259,42 @@ "type":"list", "member":{"shape":"Row"} }, + "S3DestinationConfiguration":{ + "type":"structure", + "required":["location"], + "members":{ + "location":{ + "shape":"S3DestinationLocation", + "documentation":"The S3 destination configuration location.
" + } + }, + "documentation":"The S3 destination configuration.
" + }, + "S3DestinationLocation":{ + "type":"string", + "pattern":".*(^arn:((aws)|(aws-cn)|(aws-us-gov)):s3:::)([/a-zA-Z0-9_-]+$).*" + }, "S3Location":{ "type":"string", "max":1024, "min":0, "pattern":".*(^arn:((aws)|(aws-cn)|(aws-us-gov)):s3:::)([a-zA-Z0-9_-]+$).*" }, + "S3SourceConfiguration":{ + "type":"structure", + "required":["location"], + "members":{ + "location":{ + "shape":"S3SourceLocation", + "documentation":"The S3 destination source configuration location.
" + } + }, + "documentation":"The S3 destination source configuration.
" + }, + "S3SourceLocation":{ + "type":"string", + "pattern":".*(^arn:((aws)|(aws-cn)|(aws-us-gov)):s3:::)([a-zA-Z0-9_-]+)\\/([/.a-zA-Z0-9_-]+$).*" + }, "S3Url":{ "type":"string", "max":256, @@ -3454,6 +4410,49 @@ }, "exception":true }, + "SiteWiseExternalId":{ + "type":"string", + "max":128, + "min":2, + "pattern":".*[a-zA-Z0-9_][a-zA-Z_\\-0-9.:]*[a-zA-Z0-9_]+.*" + }, + "SourceConfiguration":{ + "type":"structure", + "required":["type"], + "members":{ + "type":{ + "shape":"SourceType", + "documentation":"The source configuration type.
" + }, + "s3Configuration":{ + "shape":"S3SourceConfiguration", + "documentation":"The source configuration S3 configuration.
" + }, + "iotSiteWiseConfiguration":{ + "shape":"IotSiteWiseSourceConfiguration", + "documentation":"The source configuration IoT SiteWise configuration.
" + }, + "iotTwinMakerConfiguration":{ + "shape":"IotTwinMakerSourceConfiguration", + "documentation":"The source configuration IoT TwinMaker configuration.
" + } + }, + "documentation":"The source configuration.
" + }, + "SourceConfigurations":{ + "type":"list", + "member":{"shape":"SourceConfiguration"}, + "max":1, + "min":1 + }, + "SourceType":{ + "type":"string", + "enum":[ + "s3", + "iotsitewise", + "iottwinmaker" + ] + }, "State":{ "type":"string", "enum":[ @@ -3828,6 +4827,10 @@ "componentTypeName":{ "shape":"ComponentTypeName", "documentation":"The component type name.
" + }, + "compositeComponentTypes":{ + "shape":"CompositeComponentTypesRequest", + "documentation":"This is an object that maps strings to compositeComponentTypes
of the componentType
. CompositeComponentType
is referenced by componentTypeId
.
An object that maps strings to the component updates in the request. Each string in the mapping must be unique to this object.
" }, + "compositeComponentUpdates":{ + "shape":"CompositeComponentUpdatesMapRequest", + "documentation":"This is an object that maps strings to compositeComponent
updates in the request. Each key of the map represents the componentPath
of the compositeComponent
.
An object that describes the update request for a parent entity.
" @@ -4014,6 +5021,10 @@ "role":{ "shape":"RoleArn", "documentation":"The ARN of the execution role associated with the workspace.
" + }, + "s3Location":{ + "shape":"S3Location", + "documentation":"The ARN of the S3 bucket where resources associated with the workspace are stored.
" } } }, @@ -4027,6 +5038,12 @@ } } }, + "Uuid":{ + "type":"string", + "max":36, + "min":36, + "pattern":"[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}" + }, "ValidationException":{ "type":"structure", "members":{ @@ -4047,6 +5064,12 @@ "type":"list", "member":{"shape":"PropertyValue"} }, + "WorkspaceDeleteMessage":{ + "type":"string", + "max":2048, + "min":0, + "pattern":".*" + }, "WorkspaceSummaries":{ "type":"list", "member":{"shape":"WorkspaceSummary"} @@ -4072,6 +5095,10 @@ "shape":"Description", "documentation":"The description of the workspace.
" }, + "linkedServices":{ + "shape":"LinkedServices", + "documentation":"A list of services that are linked to the workspace.
" + }, "creationDateTime":{ "shape":"Timestamp", "documentation":"The date and time when the workspace was created.
" diff --git a/botocore/data/s3/2006-03-01/service-2.json b/botocore/data/s3/2006-03-01/service-2.json index 20d95d8b85..94ce66d321 100644 --- a/botocore/data/s3/2006-03-01/service-2.json +++ b/botocore/data/s3/2006-03-01/service-2.json @@ -516,7 +516,7 @@ {"shape":"InvalidObjectState"} ], "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTObjectGET.html", - "documentation":"Retrieves objects from Amazon S3. To use GET
, you must have READ
access to the object. If you grant READ
access to the anonymous user, you can return the object without using an authorization header.
An Amazon S3 bucket has no directory hierarchy such as you would find in a typical computer file system. You can, however, create a logical hierarchy by using object key names that imply a folder structure. For example, instead of naming an object sample.jpg
, you can name it photos/2006/February/sample.jpg
.
To get an object from such a logical hierarchy, specify the full key name for the object in the GET
operation. For a virtual hosted-style request example, if you have the object photos/2006/February/sample.jpg
, specify the resource as /photos/2006/February/sample.jpg
. For a path-style request example, if you have the object photos/2006/February/sample.jpg
in the bucket named examplebucket
, specify the resource as /examplebucket/photos/2006/February/sample.jpg
. For more information about request types, see HTTP Host Header Bucket Specification.
For more information about returning the ACL of an object, see GetObjectAcl.
If the object you are retrieving is stored in the S3 Glacier Flexible Retrieval or S3 Glacier Deep Archive storage class, or S3 Intelligent-Tiering Archive or S3 Intelligent-Tiering Deep Archive tiers, before you can retrieve the object you must first restore a copy using RestoreObject. Otherwise, this action returns an InvalidObjectState
error. For information about restoring archived objects, see Restoring Archived Objects.
Encryption request headers, like x-amz-server-side-encryption
, should not be sent for GET requests if your object uses server-side encryption with Key Management Service (KMS) keys (SSE-KMS), dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), or server-side encryption with Amazon S3 managed encryption keys (SSE-S3). If your object does use these types of keys, you’ll get an HTTP 400 Bad Request error.
If you encrypt an object by using server-side encryption with customer-provided encryption keys (SSE-C) when you store the object in Amazon S3, then when you GET the object, you must use the following headers:
x-amz-server-side-encryption-customer-algorithm
x-amz-server-side-encryption-customer-key
x-amz-server-side-encryption-customer-key-MD5
For more information about SSE-C, see Server-Side Encryption (Using Customer-Provided Encryption Keys).
Assuming you have the relevant permission to read object tags, the response also returns the x-amz-tagging-count
header that provides the count of number of tags associated with the object. You can use GetObjectTagging to retrieve the tag set associated with an object.
You need the relevant read object (or version) permission for this operation. For more information, see Specifying Permissions in a Policy. If the object that you request doesn’t exist, the error that Amazon S3 returns depends on whether you also have the s3:ListBucket
permission.
If you have the s3:ListBucket
permission on the bucket, Amazon S3 returns an HTTP status code 404 (Not Found) error.
If you don’t have the s3:ListBucket
permission, Amazon S3 returns an HTTP status code 403 (\"access denied\") error.
By default, the GET
action returns the current version of an object. To return a different version, use the versionId
subresource.
If you supply a versionId
, you need the s3:GetObjectVersion
permission to access a specific version of an object. If you request a specific version, you do not need to have the s3:GetObject
permission. If you request the current version without a specific version ID, only s3:GetObject
permission is required. s3:GetObjectVersion
permission won't be required.
If the current version of the object is a delete marker, Amazon S3 behaves as if the object was deleted and includes x-amz-delete-marker: true
in the response.
For more information about versioning, see PutBucketVersioning.
There are times when you want to override certain response header values in a GET
response. For example, you might override the Content-Disposition
response header value in your GET
request.
You can override values for a set of response headers using the following query parameters. These response header values are sent only on a successful request, that is, when status code 200 OK is returned. The set of headers you can override using these parameters is a subset of the headers that Amazon S3 accepts when you create an object. The response headers that you can override for the GET
response are Content-Type
, Content-Language
, Expires
, Cache-Control
, Content-Disposition
, and Content-Encoding
. To override these header values in the GET
response, you use the following request parameters.
You must sign the request, either using an Authorization header or a presigned URL, when using these parameters. They cannot be used with an unsigned (anonymous) request.
response-content-type
response-content-language
response-expires
response-cache-control
response-content-disposition
response-content-encoding
If both of the If-Match
and If-Unmodified-Since
headers are present in the request as follows: If-Match
condition evaluates to true
, and; If-Unmodified-Since
condition evaluates to false
; then, S3 returns 200 OK and the data requested.
If both of the If-None-Match
and If-Modified-Since
headers are present in the request as follows: If-None-Match
condition evaluates to false
, and; If-Modified-Since
condition evaluates to true
; then, S3 returns 304 Not Modified response code.
For more information about conditional requests, see RFC 7232.
The following operations are related to GetObject
:
Retrieves objects from Amazon S3. To use GET
, you must have READ
access to the object. If you grant READ
access to the anonymous user, you can return the object without using an authorization header.
An Amazon S3 bucket has no directory hierarchy such as you would find in a typical computer file system. You can, however, create a logical hierarchy by using object key names that imply a folder structure. For example, instead of naming an object sample.jpg
, you can name it photos/2006/February/sample.jpg
.
To get an object from such a logical hierarchy, specify the full key name for the object in the GET
operation. For a virtual hosted-style request example, if you have the object photos/2006/February/sample.jpg
, specify the resource as /photos/2006/February/sample.jpg
. For a path-style request example, if you have the object photos/2006/February/sample.jpg
in the bucket named examplebucket
, specify the resource as /examplebucket/photos/2006/February/sample.jpg
. For more information about request types, see HTTP Host Header Bucket Specification.
For more information about returning the ACL of an object, see GetObjectAcl.
If the object you are retrieving is stored in the S3 Glacier Flexible Retrieval or S3 Glacier Deep Archive storage class, or S3 Intelligent-Tiering Archive or S3 Intelligent-Tiering Deep Archive tiers, before you can retrieve the object you must first restore a copy using RestoreObject. Otherwise, this action returns an InvalidObjectState
error. For information about restoring archived objects, see Restoring Archived Objects.
Encryption request headers, like x-amz-server-side-encryption
, should not be sent for GET requests if your object uses server-side encryption with Key Management Service (KMS) keys (SSE-KMS), dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), or server-side encryption with Amazon S3 managed encryption keys (SSE-S3). If your object does use these types of keys, you’ll get an HTTP 400 Bad Request error.
If you encrypt an object by using server-side encryption with customer-provided encryption keys (SSE-C) when you store the object in Amazon S3, then when you GET the object, you must use the following headers:
x-amz-server-side-encryption-customer-algorithm
x-amz-server-side-encryption-customer-key
x-amz-server-side-encryption-customer-key-MD5
For more information about SSE-C, see Server-Side Encryption (Using Customer-Provided Encryption Keys).
Assuming you have the relevant permission to read object tags, the response also returns the x-amz-tagging-count
header that provides the count of number of tags associated with the object. You can use GetObjectTagging to retrieve the tag set associated with an object.
You need the relevant read object (or version) permission for this operation. For more information, see Specifying Permissions in a Policy. If the object that you request doesn’t exist, the error that Amazon S3 returns depends on whether you also have the s3:ListBucket
permission.
If you have the s3:ListBucket
permission on the bucket, Amazon S3 returns an HTTP status code 404 (Not Found) error.
If you don’t have the s3:ListBucket
permission, Amazon S3 returns an HTTP status code 403 (\"access denied\") error.
By default, the GET
action returns the current version of an object. To return a different version, use the versionId
subresource.
If you supply a versionId
, you need the s3:GetObjectVersion
permission to access a specific version of an object. If you request a specific version, you do not need to have the s3:GetObject
permission. If you request the current version without a specific version ID, only s3:GetObject
permission is required. s3:GetObjectVersion
permission won't be required.
If the current version of the object is a delete marker, Amazon S3 behaves as if the object was deleted and includes x-amz-delete-marker: true
in the response.
If the specified version is a delete marker, the response returns a 405 (Method Not Allowed) error and the Last-Modified: timestamp
response header.
For more information about versioning, see PutBucketVersioning.
There are times when you want to override certain response header values in a GET
response. For example, you might override the Content-Disposition
response header value in your GET
request.
You can override values for a set of response headers using the following query parameters. These response header values are sent only on a successful request, that is, when status code 200 OK is returned. The set of headers you can override using these parameters is a subset of the headers that Amazon S3 accepts when you create an object. The response headers that you can override for the GET
response are Content-Type
, Content-Language
, Expires
, Cache-Control
, Content-Disposition
, and Content-Encoding
. To override these header values in the GET
response, you use the following request parameters.
You must sign the request, either using an Authorization header or a presigned URL, when using these parameters. They cannot be used with an unsigned (anonymous) request.
response-content-type
response-content-language
response-expires
response-cache-control
response-content-disposition
response-content-encoding
If both of the If-Match
and If-Unmodified-Since
headers are present in the request as follows: If-Match
condition evaluates to true
, and; If-Unmodified-Since
condition evaluates to false
; then, S3 returns 200 OK and the data requested.
If both of the If-None-Match
and If-Modified-Since
headers are present in the request as follows: If-None-Match
condition evaluates to false
, and; If-Modified-Since
condition evaluates to true
; then, S3 returns 304 Not Modified response code.
For more information about conditional requests, see RFC 7232.
The following operations are related to GetObject
:
The HEAD
action retrieves metadata from an object without returning the object itself. This action is useful if you're only interested in an object's metadata. To use HEAD
, you must have READ access to the object.
A HEAD
request has the same options as a GET
action on an object. The response is identical to the GET
response except that there is no response body. Because of this, if the HEAD
request generates an error, it returns a generic 400 Bad Request
, 403 Forbidden
or 404 Not Found
code. It is not possible to retrieve the exact exception beyond these error codes.
If you encrypt an object by using server-side encryption with customer-provided encryption keys (SSE-C) when you store the object in Amazon S3, then when you retrieve the metadata from the object, you must use the following headers:
x-amz-server-side-encryption-customer-algorithm
x-amz-server-side-encryption-customer-key
x-amz-server-side-encryption-customer-key-MD5
For more information about SSE-C, see Server-Side Encryption (Using Customer-Provided Encryption Keys).
Encryption request headers, like x-amz-server-side-encryption
, should not be sent for GET
requests if your object uses server-side encryption with Key Management Service (KMS) keys (SSE-KMS), dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), or server-side encryption with Amazon S3 managed encryption keys (SSE-S3). If your object does use these types of keys, you’ll get an HTTP 400 Bad Request error.
The last modified property in this case is the creation date of the object.
Request headers are limited to 8 KB in size. For more information, see Common Request Headers.
Consider the following when using request headers:
Consideration 1 – If both of the If-Match
and If-Unmodified-Since
headers are present in the request as follows:
If-Match
condition evaluates to true
, and;
If-Unmodified-Since
condition evaluates to false
;
Then Amazon S3 returns 200 OK
and the data requested.
Consideration 2 – If both of the If-None-Match
and If-Modified-Since
headers are present in the request as follows:
If-None-Match
condition evaluates to false
, and;
If-Modified-Since
condition evaluates to true
;
Then Amazon S3 returns the 304 Not Modified
response code.
For more information about conditional requests, see RFC 7232.
You need the relevant read object (or version) permission for this operation. For more information, see Actions, resources, and condition keys for Amazon S3. If the object you request doesn't exist, the error that Amazon S3 returns depends on whether you also have the s3:ListBucket permission.
If you have the s3:ListBucket
permission on the bucket, Amazon S3 returns an HTTP status code 404 error.
If you don’t have the s3:ListBucket
permission, Amazon S3 returns an HTTP status code 403 error.
The following actions are related to HeadObject
:
The HEAD
action retrieves metadata from an object without returning the object itself. This action is useful if you're only interested in an object's metadata. To use HEAD
, you must have READ access to the object.
A HEAD
request has the same options as a GET
action on an object. The response is identical to the GET
response except that there is no response body. Because of this, if the HEAD
request generates an error, it returns a generic code, such as 400 Bad Request
, 403 Forbidden
, 404 Not Found
, 405 Method Not Allowed
, 412 Precondition Failed
, or 304 Not Modified
. It's not possible to retrieve the exact exception of these error codes.
If you encrypt an object by using server-side encryption with customer-provided encryption keys (SSE-C) when you store the object in Amazon S3, then when you retrieve the metadata from the object, you must use the following headers:
x-amz-server-side-encryption-customer-algorithm
x-amz-server-side-encryption-customer-key
x-amz-server-side-encryption-customer-key-MD5
For more information about SSE-C, see Server-Side Encryption (Using Customer-Provided Encryption Keys).
Encryption request headers, like x-amz-server-side-encryption
, should not be sent for GET
requests if your object uses server-side encryption with Key Management Service (KMS) keys (SSE-KMS), dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), or server-side encryption with Amazon S3 managed encryption keys (SSE-S3). If your object does use these types of keys, you’ll get an HTTP 400 Bad Request error.
The last modified property in this case is the creation date of the object.
Request headers are limited to 8 KB in size. For more information, see Common Request Headers.
Consider the following when using request headers:
Consideration 1 – If both of the If-Match
and If-Unmodified-Since
headers are present in the request as follows:
If-Match
condition evaluates to true
, and;
If-Unmodified-Since
condition evaluates to false
;
Then Amazon S3 returns 200 OK
and the data requested.
Consideration 2 – If both of the If-None-Match
and If-Modified-Since
headers are present in the request as follows:
If-None-Match
condition evaluates to false
, and;
If-Modified-Since
condition evaluates to true
;
Then Amazon S3 returns the 304 Not Modified
response code.
For more information about conditional requests, see RFC 7232.
You need the relevant read object (or version) permission for this operation. For more information, see Actions, resources, and condition keys for Amazon S3. If the object you request doesn't exist, the error that Amazon S3 returns depends on whether you also have the s3:ListBucket permission.
If you have the s3:ListBucket
permission on the bucket, Amazon S3 returns an HTTP status code 404 error.
If you don’t have the s3:ListBucket
permission, Amazon S3 returns an HTTP status code 403 error.
If the current version of the object is a delete marker, Amazon S3 behaves as if the object was deleted and includes x-amz-delete-marker: true
in the response.
If the specified version is a delete marker, the response returns a 405 (Method Not Allowed) error and the Last-Modified: timestamp
response header.
The following actions are related to HeadObject
:
Returns metadata about all versions of the objects in a bucket. You can also use request parameters as selection criteria to return metadata about a subset of all the object versions.
To use this operation, you must have permission to perform the s3:ListBucketVersions
action. Be aware of the name difference.
A 200 OK
response can contain valid or invalid XML. Make sure to design your application to parse the contents of the response and handle it appropriately.
To use this operation, you must have READ access to the bucket.
This action is not supported by Amazon S3 on Outposts.
The following operations are related to ListObjectVersions
:
Returns metadata about all versions of the objects in a bucket. You can also use request parameters as selection criteria to return metadata about a subset of all the object versions.
To use this operation, you must have permission to perform the s3:ListBucketVersions
action. Be aware of the name difference.
A 200 OK
response can contain valid or invalid XML. Make sure to design your application to parse the contents of the response and handle it appropriately.
To use this operation, you must have READ access to the bucket.
The following operations are related to ListObjectVersions
:
The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.
", + "documentation":"The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is required only when the object was created using a checksum algorithm or if your bucket policy requires the use of SSE-C. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.
", "location":"header", "locationName":"x-amz-server-side-encryption-customer-algorithm" }, @@ -2260,7 +2260,7 @@ }, "SSEKMSEncryptionContext":{ "shape":"SSEKMSEncryptionContext", - "documentation":"Specifies the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a base64-encoded UTF-8 string holding JSON with the encryption context key-value pairs.
", + "documentation":"Specifies the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a base64-encoded UTF-8 string holding JSON with the encryption context key-value pairs. This value must be explicitly added to specify encryption context for CopyObject requests.
", "location":"header", "locationName":"x-amz-server-side-encryption-context" }, @@ -3107,7 +3107,7 @@ }, "LastModified":{ "shape":"LastModified", - "documentation":"Date and time the object was last modified.
" + "documentation":"Date and time when the object was last modified.
" } }, "documentation":"Information about the delete marker.
" @@ -4597,7 +4597,7 @@ }, "LastModified":{ "shape":"LastModified", - "documentation":"Creation date of the object.
", + "documentation":"Date and time when the object was last modified.
", "location":"header", "locationName":"Last-Modified" }, @@ -5228,7 +5228,7 @@ }, "LastModified":{ "shape":"LastModified", - "documentation":"Creation date of the object.
", + "documentation":"Date and time when the object was last modified.
", "location":"header", "locationName":"Last-Modified" }, @@ -6869,6 +6869,10 @@ "TargetPrefix":{ "shape":"TargetPrefix", "documentation":"A prefix for all log object keys. If you store log files from multiple Amazon S3 buckets in a single bucket, you can use a prefix to distinguish which log files came from which bucket.
" + }, + "TargetObjectKeyFormat":{ + "shape":"TargetObjectKeyFormat", + "documentation":"Amazon S3 key format for log objects.
" } }, "documentation":"Describes where logs are stored and the prefix that Amazon S3 assigns to all log object keys for a bucket. For more information, see PUT Bucket logging in the Amazon S3 API Reference.
" @@ -7094,7 +7098,7 @@ }, "NewerNoncurrentVersions":{ "shape":"VersionCount", - "documentation":"Specifies how many noncurrent versions Amazon S3 will retain. If there are this many more recent noncurrent versions, Amazon S3 will take the associated action. For more information about noncurrent versions, see Lifecycle configuration elements in the Amazon S3 User Guide.
" + "documentation":"Specifies how many newer noncurrent versions must exist before Amazon S3 can perform the associated action on a given version. If there are this many more recent noncurrent versions, Amazon S3 will take the associated action. For more information about noncurrent versions, see Lifecycle configuration elements in the Amazon S3 User Guide.
" } }, "documentation":"Specifies when noncurrent object versions expire. Upon expiration, Amazon S3 permanently deletes the noncurrent object versions. You set this lifecycle configuration action on a bucket that has versioning enabled (or suspended) to request that Amazon S3 delete noncurrent object versions at a specific period in the object's lifetime.
" @@ -7112,7 +7116,7 @@ }, "NewerNoncurrentVersions":{ "shape":"VersionCount", - "documentation":"Specifies how many noncurrent versions Amazon S3 will retain. If there are this many more recent noncurrent versions, Amazon S3 will take the associated action. For more information about noncurrent versions, see Lifecycle configuration elements in the Amazon S3 User Guide.
" + "documentation":"Specifies how many newer noncurrent versions must exist before Amazon S3 can perform the associated action on a given version. If there are this many more recent noncurrent versions, Amazon S3 will take the associated action. For more information about noncurrent versions, see Lifecycle configuration elements in the Amazon S3 User Guide.
" } }, "documentation":"Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA
, ONEZONE_IA
, INTELLIGENT_TIERING
, GLACIER_IR
, GLACIER
, or DEEP_ARCHIVE
storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA
, ONEZONE_IA
, INTELLIGENT_TIERING
, GLACIER_IR
, GLACIER
, or DEEP_ARCHIVE
storage class at a specific period in the object's lifetime.
Date and time the object was last modified.
" + "documentation":"Date and time when the object was last modified.
" }, "Owner":{ "shape":"Owner", @@ -7610,6 +7614,24 @@ }, "PartNumber":{"type":"integer"}, "PartNumberMarker":{"type":"integer"}, + "PartitionDateSource":{ + "type":"string", + "enum":[ + "EventTime", + "DeliveryTime" + ] + }, + "PartitionedPrefix":{ + "type":"structure", + "members":{ + "PartitionDateSource":{ + "shape":"PartitionDateSource", + "documentation":"Specifies the partition date source for the partitioned prefix. PartitionDateSource can be EventTime or DeliveryTime.
" + } + }, + "documentation":"Amazon S3 keys for log objects are partitioned in the following format:
[DestinationPrefix][SourceAccountId]/[SourceRegion]/[SourceBucket]/[YYYY]/[MM]/[DD]/[YYYY]-[MM]-[DD]-[hh]-[mm]-[ss]-[UniqueString]
PartitionedPrefix defaults to EventTime delivery when server access logs are delivered.
", + "locationName":"PartitionedPrefix" + }, "Parts":{ "type":"list", "member":{"shape":"Part"}, @@ -9033,7 +9055,7 @@ }, "SSEKMSEncryptionContext":{ "shape":"SSEKMSEncryptionContext", - "documentation":"Specifies the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a base64-encoded UTF-8 string holding JSON with the encryption context key-value pairs. This value is stored as object metadata and automatically gets passed on to Amazon Web Services KMS for future GetObject
or CopyObject
operations on this object.
Specifies the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a base64-encoded UTF-8 string holding JSON with the encryption context key-value pairs. This value is stored as object metadata and automatically gets passed on to Amazon Web Services KMS for future GetObject
or CopyObject
operations on this object. This value must be explicitly added during CopyObject operations.
To use simple format for S3 keys for log objects, set SimplePrefix to an empty object.
[DestinationPrefix][YYYY]-[MM]-[DD]-[hh]-[mm]-[ss]-[UniqueString]
To use the simple format for S3 keys for log objects. To specify SimplePrefix format, set SimplePrefix to {}.
", + "locationName":"SimplePrefix" + }, + "PartitionedPrefix":{ + "shape":"PartitionedPrefix", + "documentation":"Partitioned S3 key for log objects.
", + "locationName":"PartitionedPrefix" + } + }, + "documentation":"Amazon S3 key format for log objects. Only one format, PartitionedPrefix or SimplePrefix, is allowed.
" + }, "TargetPrefix":{"type":"string"}, "Tier":{ "type":"string", diff --git a/docs/source/conf.py b/docs/source/conf.py index a7ab5b52ad..6d5fa496cc 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -59,7 +59,7 @@ # The short X.Y version. version = '1.32' # The full version, including alpha/beta/rc tags. -release = '1.32.4' +release = '1.32.5' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff --git a/tests/functional/endpoint-rules/cloudfront-keyvaluestore/endpoint-tests-1.json b/tests/functional/endpoint-rules/cloudfront-keyvaluestore/endpoint-tests-1.json new file mode 100644 index 0000000000..e073f9b859 --- /dev/null +++ b/tests/functional/endpoint-rules/cloudfront-keyvaluestore/endpoint-tests-1.json @@ -0,0 +1,198 @@ +{ + "testCases": [ + { + "documentation": "FIPS should error", + "expect": { + "error": "Invalid Configuration: FIPS is not supported with CloudFront-KeyValueStore." + }, + "params": { + "UseFIPS": true + } + }, + { + "documentation": "KVS ARN must be provided to use this service", + "expect": { + "error": "KVS ARN must be provided to use this service" + } + }, + { + "documentation": "KVS ARN must be a valid ARN", + "expect": { + "error": "KVS ARN must be a valid ARN" + }, + "params": { + "KvsARN": "not-a-valid-arn" + } + }, + { + "documentation": "Provided ARN was not a valid CloudFront Service ARN. Found: `notcloudfront`", + "expect": { + "error": "Provided ARN is not a valid CloudFront Service ARN. Found: `notcloudfront`" + }, + "params": { + "KvsARN": "arn:aws:notcloudfront::123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba" + } + }, + { + "documentation": "Provided ARN must be a global resource ARN. Found: `us-west-2`", + "expect": { + "error": "Provided ARN must be a global resource ARN. Found: `us-west-2`" + }, + "params": { + "KvsARN": "arn:aws:cloudfront:us-west-2:123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba" + } + }, + { + "documentation": "ARN resource type is invalid. Expected `key-value-store`, found: `some-other-resource-type`", + "expect": { + "error": "ARN resource type is invalid. Expected `key-value-store`, found: `some-other-resource-type`" + }, + "params": { + "KvsARN": "arn:aws:cloudfront::123456789012:some-other-resource-type/my-first-kvs-e10b1dce4f394248811e77167e0451ba" + } + }, + { + "documentation": "CloudFront-KeyValueStore is not supported in partition `aws-cn`", + "expect": { + "error": "CloudFront-KeyValueStore is not supported in partition `aws-cn`" + }, + "params": { + "KvsARN": "arn:aws-cn:cloudfront::123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba" + } + }, + { + "documentation": "CloudFront-KeyValueStore is not supported in partition `aws-us-gov`", + "expect": { + "error": "CloudFront-KeyValueStore is not supported in partition `aws-us-gov`" + }, + "params": { + "KvsARN": "arn:aws-us-gov:cloudfront::123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba" + } + }, + { + "documentation": "Valid account based endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingName": "cloudfront-keyvaluestore", + "name": "sigv4a", + "signingRegionSet": [ + "*" + ] + } + ] + }, + "url": "https://123456789012.cloudfront-kvs.global.api.aws" + } + }, + "params": { + "KvsARN": "arn:aws:cloudfront::123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba" + } + }, + { + "documentation": "Valid account based endpoint, with SDK region", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingName": "cloudfront-keyvaluestore", + "name": "sigv4a", + "signingRegionSet": [ + "*" + ] + } + ] + }, + "url": "https://123456789012.cloudfront-kvs.global.api.aws" + } + }, + "params": { + "KvsARN": "arn:aws:cloudfront::123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba", + "Region": "us-west-2" + } + }, + { + "documentation": "Valid ARN, different partition, should error", + "expect": { + "error": "Client was configured for partition `aws-cn` but Kvs ARN has `aws`" + }, + "params": { + "KvsARN": "arn:aws:cloudfront::123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba", + "Region": "cn-north-1" + } + }, + { + "documentation": "Valid account based endpoint with FIPS, should error", + "expect": { + "error": "Invalid Configuration: FIPS is not supported with CloudFront-KeyValueStore." + }, + "params": { + "KvsARN": "arn:aws:cloudfront::123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba", + "Region": "us-east-1", + "UseFIPS": true + } + }, + { + "documentation": "Custom sdk endpoint override", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingName": "cloudfront-keyvaluestore", + "name": "sigv4a", + "signingRegionSet": [ + "*" + ] + } + ] + }, + "url": "https://123456789012.my-override.example.com" + } + }, + "params": { + "KvsARN": "arn:aws:cloudfront::123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba", + "Region": "us-east-1", + "Endpoint": "https://my-override.example.com" + } + }, + { + "documentation": "Custom sdk endpoint override with path and http", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingName": "cloudfront-keyvaluestore", + "name": "sigv4a", + "signingRegionSet": [ + "*" + ] + } + ] + }, + "url": "http://123456789012.my-override.example.com/custom-path" + } + }, + "params": { + "KvsARN": "arn:aws:cloudfront::123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba", + "Endpoint": "http://my-override.example.com/custom-path" + } + }, + { + "documentation": "Custom override with different partition should error", + "expect": { + "error": "Client was configured for partition `aws-us-gov` but Kvs ARN has `aws`" + }, + "params": { + "KvsARN": "arn:aws:cloudfront::123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba", + "Region": "us-gov-east-1", + "Endpoint": "https://my-override.example.com" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff --git a/tests/functional/endpoint-rules/inspector-scan/endpoint-tests-1.json b/tests/functional/endpoint-rules/inspector-scan/endpoint-tests-1.json new file mode 100644 index 0000000000..b3d01284bb --- /dev/null +++ b/tests/functional/endpoint-rules/inspector-scan/endpoint-tests-1.json @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff --git a/tests/functional/test_paginator_config.py b/tests/functional/test_paginator_config.py index 267d8b7367..3b159416d3 100644 --- a/tests/functional/test_paginator_config.py +++ b/tests/functional/test_paginator_config.py @@ -46,6 +46,7 @@ 'cloudfront.ListDistributions.DistributionList', 'cloudfront.ListInvalidations.InvalidationList', 'cloudfront.ListStreamingDistributions.StreamingDistributionList', + 'cloudfront.ListKeyValueStores.KeyValueStoreList', 'codedeploy.ListDeploymentGroups.applicationName', 'dms.DescribeTableStatistics.ReplicationTaskArn', 'dms.DescribeReplicationTaskAssessmentResults.BucketName',