IOTTHINGSGRAPH

AssociateEntityToThing

valid {
    input.Body.thingName == STRING
    input.Body.entityId == STRING
    input.Body.namespaceVersion == LONG
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateFlowTemplate

enum_DefinitionLanguage := [ "GRAPHQL" ]

valid {
    input.Body.definition.language == enum_DefinitionLanguage[_]
    input.Body.definition.text == STRING
    input.Body.compatibleNamespaceVersion == LONG
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateSystemInstance

enum_DefinitionLanguage := [ "GRAPHQL" ]
enum_DeploymentTarget := [ "GREENGRASS", "CLOUD" ]

valid {
    input.Body.tags[_].key == STRING
    input.Body.tags[_].value == STRING
    input.Body.definition.language == enum_DefinitionLanguage[_]
    input.Body.definition.text == STRING
    input.Body.target == enum_DeploymentTarget[_]
    input.Body.greengrassGroupName == STRING
    input.Body.s3BucketName == STRING
    input.Body.metricsConfiguration.cloudMetricEnabled == BOOLEAN
    input.Body.metricsConfiguration.metricRuleRoleArn == STRING
    input.Body.flowActionsRoleArn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateSystemTemplate

enum_DefinitionLanguage := [ "GRAPHQL" ]

valid {
    input.Body.definition.language == enum_DefinitionLanguage[_]
    input.Body.definition.text == STRING
    input.Body.compatibleNamespaceVersion == LONG
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteFlowTemplate

valid {
    input.Body.id == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteNamespace

valid {
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteSystemInstance

valid {
    input.Body.id == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteSystemTemplate

valid {
    input.Body.id == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeploySystemInstance

valid {
    input.Body.id == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeprecateFlowTemplate

valid {
    input.Body.id == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeprecateSystemTemplate

valid {
    input.Body.id == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DescribeNamespace

valid {
    input.Body.namespaceName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DissociateEntityFromThing

enum_EntityType := [ "DEVICE", "SERVICE", "DEVICE_MODEL", "CAPABILITY", "STATE", "ACTION", "EVENT", "PROPERTY", "MAPPING", "ENUM" ]

valid {
    input.Body.thingName == STRING
    input.Body.entityType == enum_EntityType[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetEntities

valid {
    input.Body.ids[_] == STRING
    input.Body.namespaceVersion == LONG
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetFlowTemplate

valid {
    input.Body.id == STRING
    input.Body.revisionNumber == LONG
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetFlowTemplateRevisions

valid {
    input.Body.id == STRING
    input.Body.nextToken == STRING
    input.Body.maxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetNamespaceDeletionStatus

valid {
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetSystemInstance

valid {
    input.Body.id == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetSystemTemplate

valid {
    input.Body.id == STRING
    input.Body.revisionNumber == LONG
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetSystemTemplateRevisions

valid {
    input.Body.id == STRING
    input.Body.nextToken == STRING
    input.Body.maxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetUploadStatus

valid {
    input.Body.uploadId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListFlowExecutionMessages

valid {
    input.Body.flowExecutionId == STRING
    input.Body.nextToken == STRING
    input.Body.maxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListTagsForResource

valid {
    input.Body.maxResults == INTEGER
    input.Body.resourceArn == STRING
    input.Body.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SearchEntities

enum_EntityFilterName := [ "NAME", "NAMESPACE", "SEMANTIC_TYPE_PATH", "REFERENCED_ENTITY_ID" ]
enum_EntityType := [ "DEVICE", "SERVICE", "DEVICE_MODEL", "CAPABILITY", "STATE", "ACTION", "EVENT", "PROPERTY", "MAPPING", "ENUM" ]

valid {
    input.Body.entityTypes[_] == enum_EntityType[_]
    input.Body.filters[_].name == enum_EntityFilterName[_]
    input.Body.filters[_].value[_] == STRING
    input.Body.nextToken == STRING
    input.Body.maxResults == INTEGER
    input.Body.namespaceVersion == LONG
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SearchFlowExecutions

valid {
    input.Body.systemInstanceId == STRING
    input.Body.flowExecutionId == STRING
    input.Body.startTime == TIMESTAMP
    input.Body.endTime == TIMESTAMP
    input.Body.nextToken == STRING
    input.Body.maxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SearchFlowTemplates

enum_FlowTemplateFilterName := [ "DEVICE_MODEL_ID" ]

valid {
    input.Body.filters[_].name == enum_FlowTemplateFilterName[_]
    input.Body.filters[_].value[_] == STRING
    input.Body.nextToken == STRING
    input.Body.maxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SearchSystemInstances

enum_SystemInstanceFilterName := [ "SYSTEM_TEMPLATE_ID", "STATUS", "GREENGRASS_GROUP_NAME" ]

valid {
    input.Body.filters[_].name == enum_SystemInstanceFilterName[_]
    input.Body.filters[_].value[_] == STRING
    input.Body.nextToken == STRING
    input.Body.maxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SearchSystemTemplates

enum_SystemTemplateFilterName := [ "FLOW_TEMPLATE_ID" ]

valid {
    input.Body.filters[_].name == enum_SystemTemplateFilterName[_]
    input.Body.filters[_].value[_] == STRING
    input.Body.nextToken == STRING
    input.Body.maxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SearchThings

valid {
    input.Body.entityId == STRING
    input.Body.nextToken == STRING
    input.Body.maxResults == INTEGER
    input.Body.namespaceVersion == LONG
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

TagResource

valid {
    input.Body.resourceArn == STRING
    input.Body.tags[_].key == STRING
    input.Body.tags[_].value == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UndeploySystemInstance

valid {
    input.Body.id == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UntagResource

valid {
    input.Body.resourceArn == STRING
    input.Body.tagKeys[_] == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateFlowTemplate

enum_DefinitionLanguage := [ "GRAPHQL" ]

valid {
    input.Body.id == STRING
    input.Body.definition.language == enum_DefinitionLanguage[_]
    input.Body.definition.text == STRING
    input.Body.compatibleNamespaceVersion == LONG
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateSystemTemplate

enum_DefinitionLanguage := [ "GRAPHQL" ]

valid {
    input.Body.id == STRING
    input.Body.definition.language == enum_DefinitionLanguage[_]
    input.Body.definition.text == STRING
    input.Body.compatibleNamespaceVersion == LONG
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UploadEntityDefinitions

enum_DefinitionLanguage := [ "GRAPHQL" ]

valid {
    input.Body.document.language == enum_DefinitionLanguage[_]
    input.Body.document.text == STRING
    input.Body.syncWithPublicNamespace == BOOLEAN
    input.Body.deprecateExistingEntities == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}