Creates a managed thing. A managed thing contains the device identifier, protocol supported, and capabilities of the device in a protocol-specific format.
Request Syntax
POST /managed-things HTTP/1.1
Content-type: application/json
{
"AuthenticationMaterial": "string
",
"AuthenticationMaterialType": "string
",
"Brand": "string
",
"Capabilities": "string
",
"CapabilityReport": {
"endpoints": [
{
"capabilities": [
{
"actions": [ "string
" ],
"events": [ "string
" ],
"id": "string
",
"name": "string
",
"properties": [ "string
" ],
"version": "string
"
}
],
"deviceTypes": [ "string
" ],
"id": "string
"
}
],
"nodeId": "string
",
"version": "string
"
},
"Classification": "string
",
"ClientToken": "string
",
"CredentialLockerId": "string
",
"MetaData": {
"string
" : "string
"
},
"Model": "string
",
"Name": "string
",
"Owner": "string
",
"Role": "string
",
"SerialNumber": "string
",
"Tags": {
"string
" : "string
"
}
}
URI Request Parameters
The request does not use any URI parameters.
Request Body
The request accepts the following data in JSON format.
- AuthenticationMaterial
-
The authentication material defining the device connectivity setup requests. The authentication materials used are the device bar code.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 512.
Pattern:
[0-9A-Za-z!#$%&()*\+\-;<=>?@^_`{|}~\/: ]+
Required: Yes
- AuthenticationMaterialType
-
The type of authentication material used for device connectivity setup requests.
Type: String
Valid Values:
WIFI_SETUP_QR_BAR_CODE | ZWAVE_QR_BAR_CODE | ZIGBEE_QR_BAR_CODE
Required: Yes
- Brand
-
The brand of the device.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 128.
Pattern:
[A-Za-z0-9-_ ]+
Required: No
- Capabilities
-
The capabilities of the device such as light bulb.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 65535.
Pattern:
[a-zA-Z0-9\s'\x{0022},.:\\\/{$}\[\]=_\-\+]+
Required: No
- CapabilityReport
-
A report of the capabilities for the managed thing.
Type: CapabilityReport object
Required: No
- Classification
-
The classification of the managed thing such as light bulb or thermostat.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 64.
Required: No
- ClientToken
-
An idempotency token. If you retry a request that completed successfully initially using the same client token and parameters, then the retry attempt will succeed without performing any further actions.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 64.
Pattern:
[a-zA-Z0-9=_-]+
Required: No
- CredentialLockerId
-
The identifier of the credential for the managed thing.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 64.
Pattern:
[a-zA-Z0-9]*
Required: No
- MetaData
-
The metadata for the managed thing.
Type: String to string map
Map Entries: Maximum number of 50 items.
Key Length Constraints: Minimum length of 0. Maximum length of 128.
Key Pattern:
.*[a-zA-Z0-9_.,@/:#-]+.*
Value Length Constraints: Minimum length of 0. Maximum length of 800.
Value Pattern:
.*[a-zA-Z0-9_.,@/:#-]*.*
Required: No
- Model
-
The model of the device.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 128.
Pattern:
[A-Za-z0-9-_ ]+
Required: No
- Name
-
The name of the managed thing representing the physical device.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 128.
Pattern:
[\p{L}\p{N} ._-]+
Required: No
- Owner
-
Owner of the device, usually an indication of whom the device belongs to. This value should not contain personal identifiable information.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 64.
Pattern:
[a-zA-Z0-9_.,@-]+
Required: No
- Role
-
The type of device used. This will be the hub controller, cloud device, or AWS IoT device.
Type: String
Valid Values:
CONTROLLER | DEVICE
Required: Yes
- SerialNumber
-
The serial number of the device.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 128.
Pattern:
[A-Za-z0-9-_ ]+
Required: No
- Tags
-
A set of key/value pairs that are used to manage the managed thing.
Type: String to string map
Map Entries: Maximum number of 50 items.
Key Length Constraints: Minimum length of 1. Maximum length of 128.
Value Length Constraints: Minimum length of 0. Maximum length of 256.
Required: No
Response Syntax
HTTP/1.1 201
Content-type: application/json
{
"Arn": "string",
"CreatedAt": number,
"Id": "string"
}
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.
- Arn
-
The Amazon Resource Name (ARN) of the managed thing.
Type: String
Length Constraints: Minimum length of 32. Maximum length of 1011.
Pattern:
arn:aws:iotmanagedintegrations:[0-9a-zA-Z-]+:[0-9]+:managed-thing/([0-9a-zA-Z:_-])+
- CreatedAt
-
The timestamp value of when the device creation request occurred.
Type: Timestamp
- Id
-
The id of the managed thing.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 64.
Pattern:
[a-zA-Z0-9:_-]*
Errors
For information about the errors that are common to all actions, see Common Errors.
- AccessDeniedException
-
User is not authorized.
HTTP Status Code: 403
- ConflictException
-
There is a conflict with the request.
HTTP Status Code: 409
- InternalServerException
-
Internal error from the service that indicates an unexpected error or that the service is unavailable.
HTTP Status Code: 500
- ResourceNotFoundException
-
The specified resource does not exist.
HTTP Status Code: 404
- ServiceUnavailableException
-
The service is temporarily unavailable.
HTTP Status Code: 503
- ThrottlingException
-
The rate exceeds the limit.
HTTP Status Code: 429
- UnauthorizedException
-
You are not authorized to perform this operation.
HTTP Status Code: 401
- ValidationException
-
A validation error occurred when performing the API request.
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: