[ aws . iotthingsgraph ]



Gets a system instance.

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.


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


--id (string)

The ID of the system deployment instance. This value is returned by CreateSystemInstance .

The ID should be in the following format.

urn:tdm:REGION/ACCOUNT ID/default:deployment:DEPLOYMENTNAME

--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 get a system instance

The following get-system-instance example gets a definition for a system instance.

aws iotthingsgraph get-system-instance \
    --id "urn:tdm:us-west-2/123456789012/default:Deployment:Room218"


    "description": {
        "summary": {
            "id": "urn:tdm:us-west-2/123456789012/default:Deployment:Room218",
            "arn": "arn:aws:iotthingsgraph:us-west-2:123456789012:Deployment/default/Room218",
            "status": "NOT_DEPLOYED",
            "target": "CLOUD",
            "createdAt": 1559249315.208,
            "updatedAt": 1559249315.208
        "definition": {
            "language": "GRAPHQL",
            "text": "{\r\nquery Room218 @deployment(id: \"urn:tdm:us-west-2/123456789012/default:Deployment:Room218\", systemId: \"urn:tdm:us-west-2/123456789012/default:System:SecurityFlow\") {\r\n    motionSensor(deviceId: \"MotionSensorName\")\r\n    screen(deviceId: \"ScreenName\")\r\n    camera(deviceId: \"CameraName\") \r\n    triggers {MotionEventTrigger(description: \"a trigger\") {  \r\n    condition(expr: \"devices[name == 'motionSensor'].events[name == 'StateChanged'].lastEvent\") \r\n    action(expr: \"ThingsGraph.startFlow('SecurityFlow', bindings[name == 'camera'].deviceId, bindings[name == 'screen'].deviceId)\")\r\n    }\r\n   }\r\n  }\r\n  }"
        "metricsConfiguration": {
            "cloudMetricEnabled": false
        "validatedNamespaceVersion": 5,
        "flowActionsRoleArn": "arn:aws:iam::123456789012:role/ThingsGraphRole"

For more information, see Working with Systems and Flow Configurations in the AWS IoT Things Graph User Guide.


description -> (structure)

An object that describes the system instance.

summary -> (structure)

An object that contains summary information about a system instance.

id -> (string)

The ID of the system instance.

arn -> (string)

The ARN of the system instance.

status -> (string)

The status of the system instance.

target -> (string)

The target of the system instance.

greengrassGroupName -> (string)

The ID of the Greengrass group where the system instance is deployed.

createdAt -> (timestamp)

The date when the system instance was created.

updatedAt -> (timestamp)

The date and time when the system instance was last updated.

greengrassGroupId -> (string)

The ID of the Greengrass group where the system instance is deployed.

greengrassGroupVersionId -> (string)

The version of the Greengrass group where the system instance is deployed.

definition -> (structure)

A document that defines an entity.

language -> (string)

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

text -> (string)

The GraphQL text that defines the entity.

s3BucketName -> (string)

The Amazon Simple Storage Service bucket where information about a system instance is stored.

metricsConfiguration -> (structure)

An object that specifies whether cloud metrics are collected in a deployment and, if so, what role is used to collect metrics.

cloudMetricEnabled -> (boolean)

A Boolean that specifies whether cloud metrics are collected.

metricRuleRoleArn -> (string)

The ARN of the role that is used to collect cloud metrics.

validatedNamespaceVersion -> (long)

The version of the user’s namespace against which the system instance was validated.

validatedDependencyRevisions -> (list)

A list of objects that contain all of the IDs and revision numbers of workflows and systems that are used in a system instance.


An object that contains the ID and revision number of a workflow or system that is part of a deployment.

id -> (string)

The ID of the workflow or system.

revisionNumber -> (long)

The revision number of the workflow or system.

flowActionsRoleArn -> (string)

The AWS Identity and Access Management (IAM) role that AWS IoT Things Graph assumes during flow execution in a cloud deployment. This role must have read and write permissionss to AWS Lambda and AWS IoT and to any other AWS services that the flow uses.