[ aws . iot ]



Updates a dynamic thing group.

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.


--thing-group-name <value>
--thing-group-properties <value>
[--expected-version <value>]
[--index-name <value>]
[--query-string <value>]
[--query-version <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--cli-auto-prompt <value>]


--thing-group-name (string)

The name of the dynamic thing group to update.

--thing-group-properties (structure)

The dynamic thing group properties to update.

thingGroupDescription -> (string)

The thing group description.

attributePayload -> (structure)

The thing group attributes in JSON format.

attributes -> (map)

A JSON string containing up to three key-value pair in JSON format. For example:


key -> (string)

value -> (string)

merge -> (boolean)

Specifies whether the list of attributes provided in the AttributePayload is merged with the attributes stored in the registry, instead of overwriting them.

To remove an attribute, call UpdateThing with an empty attribute value.


The merge attribute is only valid when calling UpdateThing or UpdateThingGroup .

Shorthand Syntax:


JSON Syntax:

  "thingGroupDescription": "string",
  "attributePayload": {
    "attributes": {"string": "string"
    "merge": true|false

--expected-version (long)

The expected version of the dynamic thing group to update.

--index-name (string)

The dynamic thing group index to update.


Currently one index is supported: ‘AWS_Things’.

--query-string (string)

The dynamic thing group search query string to update.

--query-version (string)

The dynamic thing group query version to update.


Currently one query version is supported: “2017-09-30”. If not specified, the query version defaults to this value.

--cli-input-json | --cli-input-yaml (string) Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. Similarly, if provided yaml-input it will print a sample input YAML that can be used with --cli-input-yaml. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

--cli-auto-prompt (boolean) Automatically prompt for CLI input parameters.

See ‘aws help’ for descriptions of global parameters.


To update a dynamic thing group

The following update-dynamic-thing-group example updates the specified dynamic thing group. It provides a description and updates the query string to change the group membership criteria.

aws iot update-dynamic-thing-group \
    --thing-group-name "RoomTooWarm"
    --thing-group-properties "thingGroupDescription=\"This thing group contains rooms warmer than 65F.\"" \
    --query-string "attributes.temperature>65"


    "version": 2

For more information, see Dynamic Thing Groups in the AWS IoT Developers Guide.


version -> (long)

The dynamic thing group version.