AWS::IoT::Thing
Use the AWS::IoT::Thing resource to declare an AWS IoT thing.
For information about working with things, see How AWS IoT Works and Device Registry for AWS IoT in the AWS IoT Developer Guide.
Syntax
JSON
{ "Type": "AWS::IoT::Thing", "Properties": { "AttributePayload": AttributePayload "ThingName":String} }
YAML
Type: AWS::IoT::Thing Properties: AttributePayload: AttributePayload ThingName:String
Properties
AttributePayload-
The attribute payload.
Required: No
Type: AWS IoT Thing AttributePayload
Update requires: No interruption
ThingName-
The name (the physical ID) of the AWS IoT thing.
Required: No
Type: String
Update requires: Replacement
Return Value
Ref
When you provide the logical ID of this resource to the Ref intrinsic
function, Ref returns the thing name. For example:
{ "Ref": "MyThing" }
For a stack named MyStack, a value similar to the following is
returned:
MyStack-MyThing-AB1CDEFGHIJK
For more information about using the Ref function, see Ref.
Example
The following example declares a thing and the values of its attributes.
JSON
{ "AWSTemplateFormatVersion": "2010-09-09", "Resources": { "MyThing": { "Type": "AWS::IoT::Thing", "Properties": { "ThingName": { "Ref": "NameParameter" }, "AttributePayload": { "Attributes": { "myAttributeA": { "Ref": "MyAttributeValueA" }, "myAttributeB": { "Ref": "MyAttributeValueB" }, "myAttributeC": { "Ref": "MyAttributeValueC" } } } } } }, "Parameters": { "NameParameter": { "Type": "String" }, "MyAttributeValueA": { "Type": "String", "Default": "myStringA123" }, "MyAttributeValueB": { "Type": "String", "Default": "myStringB123" }, "MyAttributeValueC": { "Type": "String", "Default": "myStringC123" } } }
YAML
AWSTemplateFormatVersion: "2010-09-09" Resources: MyThing: Type: AWS::IoT::Thing Properties: ThingName: Ref: "NameParameter" AttributePayload: Attributes: myAttributeA: Ref: "MyAttributeValueA" myAttributeB: Ref: "MyAttributeValueB" myAttributeC: Ref: "MyAttributeValueC" Parameters: NameParameter: Type: "String" MyAttributeValueA: Type: "String" Default: "myStringA123" MyAttributeValueB: Type: "String" Default: "myStringB123" MyAttributeValueC: Type: "String" Default: "myStringC123"
