CreateDatastore
Creates a data store, which is a repository for messages.
Request Syntax
POST /datastores HTTP/1.1
Content-type: application/json
{
"datastoreName": "string
",
"datastorePartitions": {
"partitions": [
{
"attributePartition": {
"attributeName": "string
"
},
"timestampPartition": {
"attributeName": "string
",
"timestampFormat": "string
"
}
}
]
},
"datastoreStorage": {
"customerManagedS3": {
"bucket": "string
",
"keyPrefix": "string
",
"roleArn": "string
"
},
"iotSiteWiseMultiLayerStorage": {
"customerManagedS3Storage": {
"bucket": "string
",
"keyPrefix": "string
"
}
},
"serviceManagedS3": {
}
},
"fileFormatConfiguration": {
"jsonConfiguration": {
},
"parquetConfiguration": {
"schemaDefinition": {
"columns": [
{
"name": "string
",
"type": "string
"
}
]
}
}
},
"retentionPeriod": {
"numberOfDays": number
,
"unlimited": boolean
},
"tags": [
{
"key": "string
",
"value": "string
"
}
]
}
URI Request Parameters
The request does not use any URI parameters.
Request Body
The request accepts the following data in JSON format.
- datastoreName
-
The name of the data store.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 128.
Pattern:
(^(?!_{2}))(^[a-zA-Z0-9_]+$)
Required: Yes
- datastorePartitions
-
Contains information about the partition dimensions in a data store.
Type: DatastorePartitions object
Required: No
- datastoreStorage
-
Where data in a data store is stored.. You can choose
serviceManagedS3
storage,customerManagedS3
storage, oriotSiteWiseMultiLayerStorage
storage. The default isserviceManagedS3
. You can't change the choice of Amazon S3 storage after your data store is created.Type: DatastoreStorage object
Required: No
- fileFormatConfiguration
-
Contains the configuration information of file formats. AWS IoT Analytics data stores support JSON and Parquet
. The default file format is JSON. You can specify only one format.
You can't change the file format after you create the data store.
Type: FileFormatConfiguration object
Required: No
- retentionPeriod
-
How long, in days, message data is kept for the data store. When
customerManagedS3
storage is selected, this parameter is ignored.Type: RetentionPeriod object
Required: No
-
Metadata which can be used to manage the data store.
Type: Array of Tag objects
Array Members: Minimum number of 1 item. Maximum number of 50 items.
Required: No
Response Syntax
HTTP/1.1 201
Content-type: application/json
{
"datastoreArn": "string",
"datastoreName": "string",
"retentionPeriod": {
"numberOfDays": number,
"unlimited": boolean
}
}
Response Elements
If the action is successful, the service sends back an HTTP 201 response.
The following data is returned in JSON format by the service.
- datastoreArn
-
The ARN of the data store.
Type: String
- datastoreName
-
The name of the data store.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 128.
Pattern:
(^(?!_{2}))(^[a-zA-Z0-9_]+$)
- retentionPeriod
-
How long, in days, message data is kept for the data store.
Type: RetentionPeriod object
Errors
For information about the errors that are common to all actions, see Common Errors.
- InternalFailureException
-
There was an internal failure.
HTTP Status Code: 500
- InvalidRequestException
-
The request was not valid.
HTTP Status Code: 400
- LimitExceededException
-
The command caused an internal limit to be exceeded.
HTTP Status Code: 410
- ResourceAlreadyExistsException
-
A resource with the same name already exists.
HTTP Status Code: 409
- ServiceUnavailableException
-
The service is temporarily unavailable.
HTTP Status Code: 503
- ThrottlingException
-
The request was denied due to request throttling.
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: