[ aws . iotthingsgraph ]



Updates the specified system. You don’t need to run this action after updating a workflow. Any deployment that uses the system will see the changes in the system when it is redeployed.

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.


--id <value>
--definition <value>
[--compatible-namespace-version <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--cli-auto-prompt <value>]


--id (string)

The ID of the system to be updated.

The ID should be in the following format.

urn:tdm:REGION/ACCOUNT ID/default:system:SYSTEMNAME

--definition (structure)

The DefinitionDocument that contains the updated system definition.

language -> (string)

The language used to define the entity. GRAPHQL is the only valid value.

text -> (string)

The GraphQL text that defines the entity.

Shorthand Syntax:


JSON Syntax:

  "language": "GRAPHQL",
  "text": "string"

--compatible-namespace-version (long)

The version of the user’s namespace. Defaults to the latest version of the user’s namespace.

If no value is specified, the latest version is used by default.

--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 system

The following update-system-template example updates a system. The value of MySystemDefinition is the GraphQL that models the system.

aws iotthingsgraph update-system-template \
    --id "urn:tdm:us-west-2/123456789012/default:System:MySystem" \
    --definition language=GRAPHQL,text="MySystemDefinition"


    "summary": {
        "createdAt": 1559249776.254,
        "id": "urn:tdm:us-west-2/123456789012/default:System:MySystem",
        "arn": "arn:aws:iotthingsgraph:us-west-2:123456789012:System/default/MySystem",
        "revisionNumber": 2

For more information, see Creating Systems in the AWS IoT Things Graph User Guide.


summary -> (structure)

An object containing summary information about the updated system.

id -> (string)

The ID of the system.

arn -> (string)

The ARN of the system.

revisionNumber -> (long)

The revision number of the system.

createdAt -> (timestamp)

The date when the system was created.