managed_things
Creates, updates, deletes, gets or lists a managed_things resource.
Overview
| Name | managed_things |
| Type | Resource |
| Id | aws.iot_managed_integrations.managed_things |
Fields
The following fields are returned by SELECT queries:
- get_managed_thing
- list_managed_things
| Name | Datatype | Description |
|---|---|---|
activated_at | string (date-time) | The timestampe value of when the device was activated. |
advertised_product_id | string | The id of the advertised product. (pattern: <code>([A-Za-z0-9!#$%&()*+-;<=>?@^_`{|}~])+</code>) |
arn | string | The Amazon Resource Name (ARN) of the managed thing. (pattern: <code>arn:aws:iotmanagedintegrations:[0-9a-zA-Z-]+:[0-9]+:managed-thing/([0-9a-zA-Z:_-])+</code>) |
brand | string | The brand of the device. (pattern: <code>[A-Za-z0-9-_ ]+</code>) |
classification | string | The classification of the managed thing such as light bulb or thermostat. |
connector_destination_id | string | The identifier of the connector destination associated with this managed thing. (pattern: <code>[A-Za-z0-9-_]+</code>) |
connector_device_id | string | The third-party device id as defined by the connector. This device id must not contain personal identifiable information (PII). This parameter is used for cloud-to-cloud devices only. (pattern: <code>[a-zA-Z0-9_.,@-]+</code>) |
connector_policy_id | string | The id of the connector policy. This parameter is used for cloud-to-cloud devices only. (pattern: <code>[A-Za-z0-9-_]+</code>) |
created_at | string (date-time) | The timestamp value of when the device creation request occurred. |
credential_locker_id | string | The identifier of the credential locker for the managed thing. (pattern: <code>[a-zA-Z0-9]*</code>) |
device_specific_key | string | A Zwave device-specific key used during device activation. This parameter is used for Zwave devices only. (pattern: <code>[a-zA-Z0-9=_.,@+-]+</code>) |
hub_network_mode | string | The network mode for the hub-connected device. (STANDARD, NETWORK_WIDE_EXCLUSION) |
id | string | The id of the managed thing. (pattern: <code>[a-zA-Z0-9:_-]*</code>) |
international_article_number | string | The unique 13 digit number that identifies the managed thing. (pattern: <code>[0-9]+</code>) |
mac_address | string | The media access control (MAC) address for the device represented by the managed thing. This parameter is used for Zigbee devices only. |
meta_data | object | The metadata for the managed thing. |
model | string | The model of the device. (pattern: <code>[A-Za-z0-9-_ ]+</code>) |
name | string | The name of the managed thing representing the physical device. (pattern: <code>[\p{L}\p{N} ._-]+</code>) |
owner | string | Owner of the device, usually an indication of whom the device belongs to. This value should not contain personal identifiable information. (pattern: <code>[a-zA-Z0-9_.,@-]+</code>) |
parent_controller_id | string | Id of the controller device used for the discovery job. (pattern: <code>[A-Za-z0-9]+</code>) |
provisioning_status | string | The provisioning status of the device in the provisioning workflow for onboarding to IoT managed integrations. For more information, see Device Provisioning. (UNASSOCIATED, PRE_ASSOCIATED, DISCOVERED, ACTIVATED, DELETION_FAILED, DELETE_IN_PROGRESS, ISOLATED, DELETED) |
role | string | The type of device used. This will be the Amazon Web Services hub controller, cloud device, or IoT device. (CONTROLLER, DEVICE) |
serial_number | string | The serial number of the device. (pattern: <code>[A-Za-z0-9-_ ]+</code>) |
tags | object | A set of key/value pairs that are used to manage the managed thing. |
universal_product_code | string | The universal product code (UPC) of the device model. The UPC is typically used in the United States of America and Canada. (pattern: <code>[0-9]+</code>) |
updated_at | string (date-time) | The timestamp value of when the managed thing was last updated at. |
wi_fi_simple_setup_configuration | object | The Wi-Fi Simple Setup configuration for the managed thing, which defines provisioning capabilities and timeout settings. |
| Name | Datatype | Description |
|---|---|---|
activated_at | string (date-time) | The timestampe value of when the managed thing was activated at. |
advertised_product_id | string | The id of the advertised product. (pattern: <code>([A-Za-z0-9!#$%&()*+-;<=>?@^_`{|}~])+</code>) |
arn | string | The Amazon Resource Name (ARN) of the managed thing. (pattern: <code>arn:aws:iotmanagedintegrations:[0-9a-zA-Z-]+:[0-9]+:managed-thing/([0-9a-zA-Z:_-])+</code>) |
brand | string | The brand of the device. (pattern: <code>[A-Za-z0-9-_ ]+</code>) |
classification | string | The classification of the managed thing such as light bulb or thermostat. |
connector_destination_id | string | The identifier of the connector destination associated with this managed thing, if applicable. (pattern: <code>[A-Za-z0-9-_]+</code>) |
connector_device_id | string | The third-party device id as defined by the connector. This device id must not contain personal identifiable information (PII). This parameter is used for cloud-to-cloud devices only. (pattern: <code>[a-zA-Z0-9_.,@-]+</code>) |
connector_policy_id | string | The id of the connector policy. This parameter is used for cloud-to-cloud devices only. (pattern: <code>[A-Za-z0-9-_]+</code>) |
created_at | string (date-time) | The timestamp value of when the device creation request occurred. |
credential_locker_id | string | The identifier of the credential locker for the managed thing. (pattern: <code>[a-zA-Z0-9]*</code>) |
id | string | The id of the device. (pattern: <code>[a-zA-Z0-9:_-]*</code>) |
model | string | The model of the device. (pattern: <code>[A-Za-z0-9-_ ]+</code>) |
name | string | The name of the managed thing representing the physical device. (pattern: <code>[\p{L}\p{N} ._-]+</code>) |
owner | string | Owner of the device, usually an indication of whom the device belongs to. This value should not contain personal identifiable information. (pattern: <code>[a-zA-Z0-9_.,@-]+</code>) |
parent_controller_id | string | Id of the controller device used for the discovery job. (pattern: <code>[A-Za-z0-9]+</code>) |
provisioning_status | string | The provisioning status of the device in the provisioning workflow for onboarding to IoT managed integrations. For more information, see Device Provisioning. (UNASSOCIATED, PRE_ASSOCIATED, DISCOVERED, ACTIVATED, DELETION_FAILED, DELETE_IN_PROGRESS, ISOLATED, DELETED) |
role | string | The type of device used. This will be the Amazon Web Services hub controller, cloud device, or IoT device. (CONTROLLER, DEVICE) |
serial_number | string | The serial number of the device. (pattern: <code>[A-Za-z0-9-_ ]+</code>) |
updated_at | string (date-time) | The timestamp value of when the managed thing was last updated at. |
Methods
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
get_managed_thing | select | identifier, region | Get details of a managed thing including its attributes and capabilities. | |
list_managed_things | select | region | OwnerFilter, CredentialLockerFilter, RoleFilter, ParentControllerIdentifierFilter, ConnectorPolicyIdFilter, ConnectorDestinationIdFilter, ConnectorDeviceIdFilter, SerialNumberFilter, ProvisioningStatusFilter, NextToken, MaxResults | Listing all managed things with provision for filters. |
create_managed_thing | insert | region, AuthenticationMaterial, AuthenticationMaterialType | Creates a managed thing. A managed thing contains the device identifier, protocol supported, and capabilities of the device in a data model format defined by Managed integrations. | |
update_managed_thing | update | identifier, region | Update the attributes and capabilities associated with a managed thing. | |
delete_managed_thing | delete | identifier, region | Force | Delete a managed thing. For direct-connected and hub-connected devices connecting with Managed integrations via a controller, all of the devices connected to it will have their status changed to PENDING. It is not possible to remove a cloud-to-cloud device. |
reset_runtime_log_configuration | exec | managed_thing_id, region | Reset a runtime log configuration for a specific managed thing. | |
send_managed_thing_command | exec | managed_thing_id, region, Endpoints | Send the command to the device represented by the managed thing. |
Parameters
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
identifier | string | The id of the managed thing. |
managed_thing_id | string | The id of the device. |
region | string | AWS region (default: us-east-1) |
ConnectorDestinationIdFilter | string | Filter managed things by the connector destination ID they are associated with. |
ConnectorDeviceIdFilter | string | Filter managed things by the connector device ID they are associated with. When specified, only managed things with this connector device ID will be returned. |
ConnectorPolicyIdFilter | string | Filter on a connector policy id for a managed thing. |
CredentialLockerFilter | string | Filter on a credential locker for a managed thing. |
Force | boolean | When set to TRUE, a forceful deteletion of the managed thing will occur. When set to FALSE, a non-forceful deletion of the managed thing will occur. |
MaxResults | integer | The maximum number of results to return at one time. |
NextToken | string | A token that can be used to retrieve the next set of results. |
OwnerFilter | string | Filter on device owners when listing managed things. |
ParentControllerIdentifierFilter | string | Filter on a parent controller id for a managed thing. |
ProvisioningStatusFilter | string | Filter on the status of the device. For more information, see Device Provisioning. |
RoleFilter | string | Filter on the type of device used. This will be the Amazon Web Services hub controller, cloud device, or IoT device. |
SerialNumberFilter | string | Filter on the serial number of the device. |
SELECT examples
- get_managed_thing
- list_managed_things
Get details of a managed thing including its attributes and capabilities.
SELECT
activated_at,
advertised_product_id,
arn,
brand,
classification,
connector_destination_id,
connector_device_id,
connector_policy_id,
created_at,
credential_locker_id,
device_specific_key,
hub_network_mode,
id,
international_article_number,
mac_address,
meta_data,
model,
name,
owner,
parent_controller_id,
provisioning_status,
role,
serial_number,
tags,
universal_product_code,
updated_at,
wi_fi_simple_setup_configuration
FROM aws.iot_managed_integrations.managed_things
WHERE identifier = '{{ identifier }}' -- required
AND region = '{{ region }}' -- required
;
Listing all managed things with provision for filters.
SELECT
activated_at,
advertised_product_id,
arn,
brand,
classification,
connector_destination_id,
connector_device_id,
connector_policy_id,
created_at,
credential_locker_id,
id,
model,
name,
owner,
parent_controller_id,
provisioning_status,
role,
serial_number,
updated_at
FROM aws.iot_managed_integrations.managed_things
WHERE region = '{{ region }}' -- required
AND OwnerFilter = '{{ OwnerFilter }}'
AND CredentialLockerFilter = '{{ CredentialLockerFilter }}'
AND RoleFilter = '{{ RoleFilter }}'
AND ParentControllerIdentifierFilter = '{{ ParentControllerIdentifierFilter }}'
AND ConnectorPolicyIdFilter = '{{ ConnectorPolicyIdFilter }}'
AND ConnectorDestinationIdFilter = '{{ ConnectorDestinationIdFilter }}'
AND ConnectorDeviceIdFilter = '{{ ConnectorDeviceIdFilter }}'
AND SerialNumberFilter = '{{ SerialNumberFilter }}'
AND ProvisioningStatusFilter = '{{ ProvisioningStatusFilter }}'
AND NextToken = '{{ NextToken }}'
AND MaxResults = '{{ MaxResults }}'
;
INSERT examples
- create_managed_thing
- Manifest
Creates a managed thing. A managed thing contains the device identifier, protocol supported, and capabilities of the device in a data model format defined by Managed integrations.
INSERT INTO aws.iot_managed_integrations.managed_things (
Role,
Owner,
CredentialLockerId,
AuthenticationMaterial,
AuthenticationMaterialType,
WiFiSimpleSetupConfiguration,
SerialNumber,
Brand,
Model,
Name,
CapabilityReport,
CapabilitySchemas,
Capabilities,
ClientToken,
Classification,
Tags,
MetaData,
region
)
SELECT
'{{ Role }}',
'{{ Owner }}',
'{{ CredentialLockerId }}',
'{{ AuthenticationMaterial }}' /* required */,
'{{ AuthenticationMaterialType }}' /* required */,
'{{ WiFiSimpleSetupConfiguration }}',
'{{ SerialNumber }}',
'{{ Brand }}',
'{{ Model }}',
'{{ Name }}',
'{{ CapabilityReport }}',
'{{ CapabilitySchemas }}',
'{{ Capabilities }}',
'{{ ClientToken }}',
'{{ Classification }}',
'{{ Tags }}',
'{{ MetaData }}',
'{{ region }}'
RETURNING
arn,
created_at,
id
;
# Description fields are for documentation purposes
- name: managed_things
props:
- name: region
value: "{{ region }}"
description: Required parameter for the managed_things resource.
- name: Role
value: "{{ Role }}"
valid_values: ['CONTROLLER', 'DEVICE']
- name: Owner
value: "{{ Owner }}"
- name: CredentialLockerId
value: "{{ CredentialLockerId }}"
- name: AuthenticationMaterial
value: "{{ AuthenticationMaterial }}"
- name: AuthenticationMaterialType
value: "{{ AuthenticationMaterialType }}"
valid_values: ['CUSTOM_PROTOCOL_QR_BAR_CODE', 'WIFI_SETUP_QR_BAR_CODE', 'ZWAVE_QR_BAR_CODE', 'ZIGBEE_QR_BAR_CODE', 'DISCOVERED_DEVICE', 'PRE_ONBOARDED_CLOUD']
- name: WiFiSimpleSetupConfiguration
description: |
The Wi-Fi Simple Setup configuration for the managed thing, which defines provisioning capabilities and timeout settings.
value:
EnableAsProvisioner: {{ EnableAsProvisioner }}
EnableAsProvisionee: {{ EnableAsProvisionee }}
TimeoutInMinutes: {{ TimeoutInMinutes }}
- name: SerialNumber
value: "{{ SerialNumber }}"
- name: Brand
value: "{{ Brand }}"
- name: Model
value: "{{ Model }}"
- name: Name
value: "{{ Name }}"
- name: CapabilityReport
description: |
Report of all capabilities supported by the device.
value:
version: "{{ version }}"
nodeId: "{{ nodeId }}"
endpoints:
- id: "{{ id }}"
deviceTypes: "{{ deviceTypes }}"
capabilities: "{{ capabilities }}"
- name: CapabilitySchemas
value:
- Format: "{{ Format }}"
CapabilityId: "{{ CapabilityId }}"
ExtrinsicId: "{{ ExtrinsicId }}"
ExtrinsicVersion: {{ ExtrinsicVersion }}
Schema: "{{ Schema }}"
- name: Capabilities
value: "{{ Capabilities }}"
- name: ClientToken
value: "{{ ClientToken }}"
- name: Classification
value: "{{ Classification }}"
- name: Tags
value: "{{ Tags }}"
- name: MetaData
value: "{{ MetaData }}"
UPDATE examples
- update_managed_thing
Update the attributes and capabilities associated with a managed thing.
UPDATE aws.iot_managed_integrations.managed_things
SET
Owner = '{{ Owner }}',
CredentialLockerId = '{{ CredentialLockerId }}',
SerialNumber = '{{ SerialNumber }}',
WiFiSimpleSetupConfiguration = '{{ WiFiSimpleSetupConfiguration }}',
Brand = '{{ Brand }}',
Model = '{{ Model }}',
Name = '{{ Name }}',
CapabilityReport = '{{ CapabilityReport }}',
CapabilitySchemas = '{{ CapabilitySchemas }}',
Capabilities = '{{ Capabilities }}',
Classification = '{{ Classification }}',
HubNetworkMode = '{{ HubNetworkMode }}',
MetaData = '{{ MetaData }}'
WHERE
identifier = '{{ identifier }}' --required
AND region = '{{ region }}' --required;
DELETE examples
- delete_managed_thing
Delete a managed thing. For direct-connected and hub-connected devices connecting with Managed integrations via a controller, all of the devices connected to it will have their status changed to PENDING. It is not possible to remove a cloud-to-cloud device.
DELETE FROM aws.iot_managed_integrations.managed_things
WHERE identifier = '{{ identifier }}' --required
AND region = '{{ region }}' --required
AND Force = '{{ Force }}'
;
Lifecycle Methods
- reset_runtime_log_configuration
- send_managed_thing_command
Reset a runtime log configuration for a specific managed thing.
EXEC aws.iot_managed_integrations.managed_things.reset_runtime_log_configuration
@managed_thing_id='{{ managed_thing_id }}' --required,
@region='{{ region }}' --required
;
Send the command to the device represented by the managed thing.
EXEC aws.iot_managed_integrations.managed_things.send_managed_thing_command
@managed_thing_id='{{ managed_thing_id }}' --required,
@region='{{ region }}' --required
@@json=
'{
"Endpoints": "{{ Endpoints }}",
"ConnectorAssociationId": "{{ ConnectorAssociationId }}",
"AccountAssociationId": "{{ AccountAssociationId }}"
}'
;