---
updatedAt: 2025-11-12T01:02:12.000Z
agentTools:
  projectIndex: https://public.docs.kivera.io/llms.txt
---

# GREENGRASS

<Embed url="https://docs.aws.amazon.com/" title="AWS documentation" provider="docs.aws.amazon.com" href="https://docs.aws.amazon.com/" />

# AssociateRoleToGroup

```erlang
valid {
    input.Body.RoleArn == STRING
    input.ReqMap.GroupId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# AssociateServiceRoleToAccount

```erlang
valid {
    input.Body.RoleArn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# BatchAssociateClientDeviceWithCoreDevice

```erlang
valid {
    input.Body.entries[_].thingName == STRING
    input.ReqMap.coreDeviceThingName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# BatchDisassociateClientDeviceFromCoreDevice

```erlang
valid {
    input.Body.entries[_].thingName == STRING
    input.ReqMap.coreDeviceThingName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CancelDeployment

```erlang
valid {
    input.ReqMap.deploymentId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CreateComponentVersion

```erlang
enum_ComponentDependencyType := [ "HARD", "SOFT" ]
enum_LambdaEventSourceType := [ "PUB_SUB", "IOT_CORE" ]
enum_LambdaFilesystemPermission := [ "ro", "rw" ]
enum_LambdaInputPayloadEncodingType := [ "json", "binary" ]
enum_LambdaIsolationMode := [ "GreengrassContainer", "NoContainer" ]

valid {
    input.Body.inlineRecipe == BLOB
    input.Body.lambdaFunction.lambdaArn == STRING
    input.Body.lambdaFunction.componentName == STRING
    input.Body.lambdaFunction.componentVersion == STRING
    input.Body.lambdaFunction.componentPlatforms[_].name == STRING
    input.Body.lambdaFunction.componentPlatforms[_].attributes.STRING == STRING
    input.Body.lambdaFunction.componentDependencies.STRING.versionRequirement == STRING
    input.Body.lambdaFunction.componentDependencies.STRING.dependencyType == enum_ComponentDependencyType[_]
    input.Body.lambdaFunction.componentLambdaParameters.eventSources[_].topic == STRING
    input.Body.lambdaFunction.componentLambdaParameters.eventSources[_].type == enum_LambdaEventSourceType[_]
    input.Body.lambdaFunction.componentLambdaParameters.maxQueueSize == INTEGER
    input.Body.lambdaFunction.componentLambdaParameters.maxInstancesCount == INTEGER
    input.Body.lambdaFunction.componentLambdaParameters.maxIdleTimeInSeconds == INTEGER
    input.Body.lambdaFunction.componentLambdaParameters.timeoutInSeconds == INTEGER
    input.Body.lambdaFunction.componentLambdaParameters.statusTimeoutInSeconds == INTEGER
    input.Body.lambdaFunction.componentLambdaParameters.pinned == BOOLEAN
    input.Body.lambdaFunction.componentLambdaParameters.inputPayloadEncodingType == enum_LambdaInputPayloadEncodingType[_]
    input.Body.lambdaFunction.componentLambdaParameters.execArgs[_] == STRING
    input.Body.lambdaFunction.componentLambdaParameters.environmentVariables.STRING == STRING
    input.Body.lambdaFunction.componentLambdaParameters.linuxProcessParams.isolationMode == enum_LambdaIsolationMode[_]
    input.Body.lambdaFunction.componentLambdaParameters.linuxProcessParams.containerParams.memorySizeInKB == INTEGER
    input.Body.lambdaFunction.componentLambdaParameters.linuxProcessParams.containerParams.mountROSysfs == BOOLEAN
    input.Body.lambdaFunction.componentLambdaParameters.linuxProcessParams.containerParams.volumes[_].sourcePath == STRING
    input.Body.lambdaFunction.componentLambdaParameters.linuxProcessParams.containerParams.volumes[_].destinationPath == STRING
    input.Body.lambdaFunction.componentLambdaParameters.linuxProcessParams.containerParams.volumes[_].permission == enum_LambdaFilesystemPermission[_]
    input.Body.lambdaFunction.componentLambdaParameters.linuxProcessParams.containerParams.volumes[_].addGroupOwner == BOOLEAN
    input.Body.lambdaFunction.componentLambdaParameters.linuxProcessParams.containerParams.devices[_].path == STRING
    input.Body.lambdaFunction.componentLambdaParameters.linuxProcessParams.containerParams.devices[_].permission == enum_LambdaFilesystemPermission[_]
    input.Body.lambdaFunction.componentLambdaParameters.linuxProcessParams.containerParams.devices[_].addGroupOwner == BOOLEAN
    input.Body.tags.STRING == STRING
    input.Body.clientToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CreateConnectorDefinition

```erlang
valid {
    input.Body.InitialVersion.Connectors[_].ConnectorArn == STRING
    input.Body.InitialVersion.Connectors[_].Id == STRING
    input.Body.InitialVersion.Connectors[_].Parameters.STRING == STRING
    input.Body.Name == STRING
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CreateConnectorDefinitionVersion

```erlang
valid {
    input.Body.Connectors[_].ConnectorArn == STRING
    input.Body.Connectors[_].Id == STRING
    input.Body.Connectors[_].Parameters.STRING == STRING
    input.ReqMap.ConnectorDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CreateCoreDefinition

```erlang
valid {
    input.Body.InitialVersion.Cores[_].CertificateArn == STRING
    input.Body.InitialVersion.Cores[_].Id == STRING
    input.Body.InitialVersion.Cores[_].SyncShadow == BOOLEAN
    input.Body.InitialVersion.Cores[_].ThingArn == STRING
    input.Body.Name == STRING
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CreateCoreDefinitionVersion

```erlang
valid {
    input.Body.Cores[_].CertificateArn == STRING
    input.Body.Cores[_].Id == STRING
    input.Body.Cores[_].SyncShadow == BOOLEAN
    input.Body.Cores[_].ThingArn == STRING
    input.ReqMap.CoreDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CreateDeployment

```erlang
enum_DeploymentComponentUpdatePolicyAction := [ "NOTIFY_COMPONENTS", "SKIP_NOTIFY_COMPONENTS" ]
enum_DeploymentFailureHandlingPolicy := [ "ROLLBACK", "DO_NOTHING" ]
enum_IoTJobAbortAction := [ "CANCEL" ]
enum_IoTJobExecutionFailureType := [ "FAILED", "REJECTED", "TIMED_OUT", "ALL" ]

valid {
    input.Body.targetArn == STRING
    input.Body.deploymentName == STRING
    input.Body.components.STRING.componentVersion == STRING
    input.Body.components.STRING.configurationUpdate.merge == STRING
    input.Body.components.STRING.configurationUpdate.reset[_] == STRING
    input.Body.components.STRING.runWith.posixUser == STRING
    input.Body.components.STRING.runWith.systemResourceLimits.memory == LONG
    input.Body.components.STRING.runWith.systemResourceLimits.cpus == DOUBLE
    input.Body.components.STRING.runWith.windowsUser == STRING
    input.Body.iotJobConfiguration.jobExecutionsRolloutConfig.exponentialRate.baseRatePerMinute == INTEGER
    input.Body.iotJobConfiguration.jobExecutionsRolloutConfig.exponentialRate.incrementFactor == DOUBLE
    input.Body.iotJobConfiguration.jobExecutionsRolloutConfig.exponentialRate.rateIncreaseCriteria.numberOfNotifiedThings == INTEGER
    input.Body.iotJobConfiguration.jobExecutionsRolloutConfig.exponentialRate.rateIncreaseCriteria.numberOfSucceededThings == INTEGER
    input.Body.iotJobConfiguration.jobExecutionsRolloutConfig.maximumPerMinute == INTEGER
    input.Body.iotJobConfiguration.abortConfig.criteriaList[_].failureType == enum_IoTJobExecutionFailureType[_]
    input.Body.iotJobConfiguration.abortConfig.criteriaList[_].action == enum_IoTJobAbortAction[_]
    input.Body.iotJobConfiguration.abortConfig.criteriaList[_].thresholdPercentage == DOUBLE
    input.Body.iotJobConfiguration.abortConfig.criteriaList[_].minNumberOfExecutedThings == INTEGER
    input.Body.iotJobConfiguration.timeoutConfig.inProgressTimeoutInMinutes == LONG
    input.Body.deploymentPolicies.failureHandlingPolicy == enum_DeploymentFailureHandlingPolicy[_]
    input.Body.deploymentPolicies.componentUpdatePolicy.timeoutInSeconds == INTEGER
    input.Body.deploymentPolicies.componentUpdatePolicy.action == enum_DeploymentComponentUpdatePolicyAction[_]
    input.Body.deploymentPolicies.configurationValidationPolicy.timeoutInSeconds == INTEGER
    input.Body.parentTargetArn == STRING
    input.Body.tags.STRING == STRING
    input.Body.clientToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CreateDeviceDefinition

```erlang
valid {
    input.Body.InitialVersion.Devices[_].CertificateArn == STRING
    input.Body.InitialVersion.Devices[_].Id == STRING
    input.Body.InitialVersion.Devices[_].SyncShadow == BOOLEAN
    input.Body.InitialVersion.Devices[_].ThingArn == STRING
    input.Body.Name == STRING
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CreateDeviceDefinitionVersion

```erlang
valid {
    input.Body.Devices[_].CertificateArn == STRING
    input.Body.Devices[_].Id == STRING
    input.Body.Devices[_].SyncShadow == BOOLEAN
    input.Body.Devices[_].ThingArn == STRING
    input.ReqMap.DeviceDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CreateFunctionDefinition

```erlang
enum_EncodingType := [ "binary", "json" ]
enum_FunctionIsolationMode := [ "GreengrassContainer", "NoContainer" ]
enum_Permission := [ "ro", "rw" ]

valid {
    input.Body.InitialVersion.DefaultConfig.Execution.IsolationMode == enum_FunctionIsolationMode[_]
    input.Body.InitialVersion.DefaultConfig.Execution.RunAs.Gid == INTEGER
    input.Body.InitialVersion.DefaultConfig.Execution.RunAs.Uid == INTEGER
    input.Body.InitialVersion.Functions[_].FunctionArn == STRING
    input.Body.InitialVersion.Functions[_].FunctionConfiguration.EncodingType == enum_EncodingType[_]
    input.Body.InitialVersion.Functions[_].FunctionConfiguration.Environment.AccessSysfs == BOOLEAN
    input.Body.InitialVersion.Functions[_].FunctionConfiguration.Environment.Execution.IsolationMode == enum_FunctionIsolationMode[_]
    input.Body.InitialVersion.Functions[_].FunctionConfiguration.Environment.Execution.RunAs.Gid == INTEGER
    input.Body.InitialVersion.Functions[_].FunctionConfiguration.Environment.Execution.RunAs.Uid == INTEGER
    input.Body.InitialVersion.Functions[_].FunctionConfiguration.Environment.ResourceAccessPolicies[_].Permission == enum_Permission[_]
    input.Body.InitialVersion.Functions[_].FunctionConfiguration.Environment.ResourceAccessPolicies[_].ResourceId == STRING
    input.Body.InitialVersion.Functions[_].FunctionConfiguration.Environment.Variables.STRING == STRING
    input.Body.InitialVersion.Functions[_].FunctionConfiguration.ExecArgs == STRING
    input.Body.InitialVersion.Functions[_].FunctionConfiguration.Executable == STRING
    input.Body.InitialVersion.Functions[_].FunctionConfiguration.MemorySize == INTEGER
    input.Body.InitialVersion.Functions[_].FunctionConfiguration.Pinned == BOOLEAN
    input.Body.InitialVersion.Functions[_].FunctionConfiguration.Timeout == INTEGER
    input.Body.InitialVersion.Functions[_].FunctionConfiguration.FunctionRuntimeOverride == STRING
    input.Body.InitialVersion.Functions[_].Id == STRING
    input.Body.Name == STRING
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CreateFunctionDefinitionVersion

```erlang
enum_EncodingType := [ "binary", "json" ]
enum_FunctionIsolationMode := [ "GreengrassContainer", "NoContainer" ]
enum_Permission := [ "ro", "rw" ]

valid {
    input.Body.DefaultConfig.Execution.IsolationMode == enum_FunctionIsolationMode[_]
    input.Body.DefaultConfig.Execution.RunAs.Gid == INTEGER
    input.Body.DefaultConfig.Execution.RunAs.Uid == INTEGER
    input.Body.Functions[_].FunctionArn == STRING
    input.Body.Functions[_].FunctionConfiguration.EncodingType == enum_EncodingType[_]
    input.Body.Functions[_].FunctionConfiguration.Environment.AccessSysfs == BOOLEAN
    input.Body.Functions[_].FunctionConfiguration.Environment.Execution.IsolationMode == enum_FunctionIsolationMode[_]
    input.Body.Functions[_].FunctionConfiguration.Environment.Execution.RunAs.Gid == INTEGER
    input.Body.Functions[_].FunctionConfiguration.Environment.Execution.RunAs.Uid == INTEGER
    input.Body.Functions[_].FunctionConfiguration.Environment.ResourceAccessPolicies[_].Permission == enum_Permission[_]
    input.Body.Functions[_].FunctionConfiguration.Environment.ResourceAccessPolicies[_].ResourceId == STRING
    input.Body.Functions[_].FunctionConfiguration.Environment.Variables.STRING == STRING
    input.Body.Functions[_].FunctionConfiguration.ExecArgs == STRING
    input.Body.Functions[_].FunctionConfiguration.Executable == STRING
    input.Body.Functions[_].FunctionConfiguration.MemorySize == INTEGER
    input.Body.Functions[_].FunctionConfiguration.Pinned == BOOLEAN
    input.Body.Functions[_].FunctionConfiguration.Timeout == INTEGER
    input.Body.Functions[_].FunctionConfiguration.FunctionRuntimeOverride == STRING
    input.Body.Functions[_].Id == STRING
    input.ReqMap.FunctionDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CreateGroup

```erlang
valid {
    input.Body.InitialVersion.ConnectorDefinitionVersionArn == STRING
    input.Body.InitialVersion.CoreDefinitionVersionArn == STRING
    input.Body.InitialVersion.DeviceDefinitionVersionArn == STRING
    input.Body.InitialVersion.FunctionDefinitionVersionArn == STRING
    input.Body.InitialVersion.LoggerDefinitionVersionArn == STRING
    input.Body.InitialVersion.ResourceDefinitionVersionArn == STRING
    input.Body.InitialVersion.SubscriptionDefinitionVersionArn == STRING
    input.Body.Name == STRING
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CreateGroupCertificateAuthority

```erlang
valid {
    input.ReqMap.GroupId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CreateGroupVersion

```erlang
valid {
    input.Body.ConnectorDefinitionVersionArn == STRING
    input.Body.CoreDefinitionVersionArn == STRING
    input.Body.DeviceDefinitionVersionArn == STRING
    input.Body.FunctionDefinitionVersionArn == STRING
    input.Body.LoggerDefinitionVersionArn == STRING
    input.Body.ResourceDefinitionVersionArn == STRING
    input.Body.SubscriptionDefinitionVersionArn == STRING
    input.ReqMap.GroupId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CreateLoggerDefinition

```erlang
enum_LoggerComponent := [ "GreengrassSystem", "Lambda" ]
enum_LoggerLevel := [ "DEBUG", "INFO", "WARN", "ERROR", "FATAL" ]
enum_LoggerType := [ "FileSystem", "AWSCloudWatch" ]

valid {
    input.Body.InitialVersion.Loggers[_].Component == enum_LoggerComponent[_]
    input.Body.InitialVersion.Loggers[_].Id == STRING
    input.Body.InitialVersion.Loggers[_].Level == enum_LoggerLevel[_]
    input.Body.InitialVersion.Loggers[_].Space == INTEGER
    input.Body.InitialVersion.Loggers[_].Type == enum_LoggerType[_]
    input.Body.Name == STRING
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CreateLoggerDefinitionVersion

```erlang
enum_LoggerComponent := [ "GreengrassSystem", "Lambda" ]
enum_LoggerLevel := [ "DEBUG", "INFO", "WARN", "ERROR", "FATAL" ]
enum_LoggerType := [ "FileSystem", "AWSCloudWatch" ]

valid {
    input.Body.Loggers[_].Component == enum_LoggerComponent[_]
    input.Body.Loggers[_].Id == STRING
    input.Body.Loggers[_].Level == enum_LoggerLevel[_]
    input.Body.Loggers[_].Space == INTEGER
    input.Body.Loggers[_].Type == enum_LoggerType[_]
    input.ReqMap.LoggerDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CreateResourceDefinition

```erlang
enum_Permission := [ "ro", "rw" ]

valid {
    input.Body.InitialVersion.Resources[_].Id == STRING
    input.Body.InitialVersion.Resources[_].Name == STRING
    input.Body.InitialVersion.Resources[_].ResourceDataContainer.LocalDeviceResourceData.GroupOwnerSetting.AutoAddGroupOwner == BOOLEAN
    input.Body.InitialVersion.Resources[_].ResourceDataContainer.LocalDeviceResourceData.GroupOwnerSetting.GroupOwner == STRING
    input.Body.InitialVersion.Resources[_].ResourceDataContainer.LocalDeviceResourceData.SourcePath == STRING
    input.Body.InitialVersion.Resources[_].ResourceDataContainer.LocalVolumeResourceData.DestinationPath == STRING
    input.Body.InitialVersion.Resources[_].ResourceDataContainer.LocalVolumeResourceData.GroupOwnerSetting.AutoAddGroupOwner == BOOLEAN
    input.Body.InitialVersion.Resources[_].ResourceDataContainer.LocalVolumeResourceData.GroupOwnerSetting.GroupOwner == STRING
    input.Body.InitialVersion.Resources[_].ResourceDataContainer.LocalVolumeResourceData.SourcePath == STRING
    input.Body.InitialVersion.Resources[_].ResourceDataContainer.S3MachineLearningModelResourceData.DestinationPath == STRING
    input.Body.InitialVersion.Resources[_].ResourceDataContainer.S3MachineLearningModelResourceData.OwnerSetting.GroupOwner == STRING
    input.Body.InitialVersion.Resources[_].ResourceDataContainer.S3MachineLearningModelResourceData.OwnerSetting.GroupPermission == enum_Permission[_]
    input.Body.InitialVersion.Resources[_].ResourceDataContainer.S3MachineLearningModelResourceData.S3Uri == STRING
    input.Body.InitialVersion.Resources[_].ResourceDataContainer.SageMakerMachineLearningModelResourceData.DestinationPath == STRING
    input.Body.InitialVersion.Resources[_].ResourceDataContainer.SageMakerMachineLearningModelResourceData.OwnerSetting.GroupOwner == STRING
    input.Body.InitialVersion.Resources[_].ResourceDataContainer.SageMakerMachineLearningModelResourceData.OwnerSetting.GroupPermission == enum_Permission[_]
    input.Body.InitialVersion.Resources[_].ResourceDataContainer.SageMakerMachineLearningModelResourceData.SageMakerJobArn == STRING
    input.Body.InitialVersion.Resources[_].ResourceDataContainer.SecretsManagerSecretResourceData.ARN == STRING
    input.Body.InitialVersion.Resources[_].ResourceDataContainer.SecretsManagerSecretResourceData.AdditionalStagingLabelsToDownload[_] == STRING
    input.Body.Name == STRING
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CreateResourceDefinitionVersion

```erlang
enum_Permission := [ "ro", "rw" ]

valid {
    input.Body.Resources[_].Id == STRING
    input.Body.Resources[_].Name == STRING
    input.Body.Resources[_].ResourceDataContainer.LocalDeviceResourceData.GroupOwnerSetting.AutoAddGroupOwner == BOOLEAN
    input.Body.Resources[_].ResourceDataContainer.LocalDeviceResourceData.GroupOwnerSetting.GroupOwner == STRING
    input.Body.Resources[_].ResourceDataContainer.LocalDeviceResourceData.SourcePath == STRING
    input.Body.Resources[_].ResourceDataContainer.LocalVolumeResourceData.DestinationPath == STRING
    input.Body.Resources[_].ResourceDataContainer.LocalVolumeResourceData.GroupOwnerSetting.AutoAddGroupOwner == BOOLEAN
    input.Body.Resources[_].ResourceDataContainer.LocalVolumeResourceData.GroupOwnerSetting.GroupOwner == STRING
    input.Body.Resources[_].ResourceDataContainer.LocalVolumeResourceData.SourcePath == STRING
    input.Body.Resources[_].ResourceDataContainer.S3MachineLearningModelResourceData.DestinationPath == STRING
    input.Body.Resources[_].ResourceDataContainer.S3MachineLearningModelResourceData.OwnerSetting.GroupOwner == STRING
    input.Body.Resources[_].ResourceDataContainer.S3MachineLearningModelResourceData.OwnerSetting.GroupPermission == enum_Permission[_]
    input.Body.Resources[_].ResourceDataContainer.S3MachineLearningModelResourceData.S3Uri == STRING
    input.Body.Resources[_].ResourceDataContainer.SageMakerMachineLearningModelResourceData.DestinationPath == STRING
    input.Body.Resources[_].ResourceDataContainer.SageMakerMachineLearningModelResourceData.OwnerSetting.GroupOwner == STRING
    input.Body.Resources[_].ResourceDataContainer.SageMakerMachineLearningModelResourceData.OwnerSetting.GroupPermission == enum_Permission[_]
    input.Body.Resources[_].ResourceDataContainer.SageMakerMachineLearningModelResourceData.SageMakerJobArn == STRING
    input.Body.Resources[_].ResourceDataContainer.SecretsManagerSecretResourceData.ARN == STRING
    input.Body.Resources[_].ResourceDataContainer.SecretsManagerSecretResourceData.AdditionalStagingLabelsToDownload[_] == STRING
    input.ReqMap.ResourceDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CreateSoftwareUpdateJob

```erlang
enum_SoftwareToUpdate := [ "core", "ota_agent" ]
enum_UpdateAgentLogLevel := [ "NONE", "TRACE", "DEBUG", "VERBOSE", "INFO", "WARN", "ERROR", "FATAL" ]
enum_UpdateTargetsArchitecture := [ "armv6l", "armv7l", "x86_64", "aarch64" ]
enum_UpdateTargetsOperatingSystem := [ "ubuntu", "raspbian", "amazon_linux", "openwrt" ]

valid {
    input.Body.S3UrlSignerRole == STRING
    input.Body.SoftwareToUpdate == enum_SoftwareToUpdate[_]
    input.Body.UpdateAgentLogLevel == enum_UpdateAgentLogLevel[_]
    input.Body.UpdateTargets[_] == STRING
    input.Body.UpdateTargetsArchitecture == enum_UpdateTargetsArchitecture[_]
    input.Body.UpdateTargetsOperatingSystem == enum_UpdateTargetsOperatingSystem[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CreateSubscriptionDefinition

```erlang
valid {
    input.Body.InitialVersion.Subscriptions[_].Id == STRING
    input.Body.InitialVersion.Subscriptions[_].Source == STRING
    input.Body.InitialVersion.Subscriptions[_].Subject == STRING
    input.Body.InitialVersion.Subscriptions[_].Target == STRING
    input.Body.Name == STRING
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CreateSubscriptionDefinitionVersion

```erlang
valid {
    input.Body.Subscriptions[_].Id == STRING
    input.Body.Subscriptions[_].Source == STRING
    input.Body.Subscriptions[_].Subject == STRING
    input.Body.Subscriptions[_].Target == STRING
    input.ReqMap.SubscriptionDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# DeleteComponent

```erlang
valid {
    input.ReqMap.arn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# DeleteConnectorDefinition

```erlang
valid {
    input.ReqMap.ConnectorDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# DeleteCoreDefinition

```erlang
valid {
    input.ReqMap.CoreDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# DeleteCoreDevice

```erlang
valid {
    input.ReqMap.coreDeviceThingName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# DeleteDeployment

```erlang
valid {
    input.ReqMap.deploymentId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# DeleteDeviceDefinition

```erlang
valid {
    input.ReqMap.DeviceDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# DeleteFunctionDefinition

```erlang
valid {
    input.ReqMap.FunctionDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# DeleteGroup

```erlang
valid {
    input.ReqMap.GroupId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# DeleteLoggerDefinition

```erlang
valid {
    input.ReqMap.LoggerDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# DeleteResourceDefinition

```erlang
valid {
    input.ReqMap.ResourceDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# DeleteSubscriptionDefinition

```erlang
valid {
    input.ReqMap.SubscriptionDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# DescribeComponent

```erlang
valid {
    input.ReqMap.arn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# DisassociateRoleFromGroup

```erlang
valid {
    input.ReqMap.GroupId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# DisassociateServiceRoleFromAccount

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

# GetAssociatedRole

```erlang
valid {
    input.ReqMap.GroupId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetBulkDeploymentStatus

```erlang
valid {
    input.ReqMap.BulkDeploymentId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetComponent

```erlang
enum_RecipeOutputFormat := [ "JSON", "YAML" ]

valid {
    input.ReqMap.arn == STRING
    input.Qs.recipeOutputFormat == enum_RecipeOutputFormat[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetComponentVersionArtifact

```erlang
enum_IotEndpointType := [ "fips", "standard" ]
enum_S3EndpointType := [ "REGIONAL", "GLOBAL" ]

valid {
    input.ReqMap.arn == STRING
    input.ReqMap.artifactName == STRING
    input.Qs.s3EndpointType == enum_S3EndpointType[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetConnectivityInfo

```erlang
valid {
    input.ReqMap.thingName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetConnectorDefinition

```erlang
valid {
    input.ReqMap.ConnectorDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetConnectorDefinitionVersion

```erlang
valid {
    input.ReqMap.ConnectorDefinitionId == STRING
    input.ReqMap.ConnectorDefinitionVersionId == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetCoreDefinition

```erlang
valid {
    input.ReqMap.CoreDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetCoreDefinitionVersion

```erlang
valid {
    input.ReqMap.CoreDefinitionId == STRING
    input.ReqMap.CoreDefinitionVersionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetCoreDevice

```erlang
valid {
    input.ReqMap.coreDeviceThingName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetDeployment

```erlang
valid {
    input.ReqMap.deploymentId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetDeploymentStatus

```erlang
valid {
    input.ReqMap.DeploymentId == STRING
    input.ReqMap.GroupId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetDeviceDefinition

```erlang
valid {
    input.ReqMap.DeviceDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetDeviceDefinitionVersion

```erlang
valid {
    input.ReqMap.DeviceDefinitionId == STRING
    input.ReqMap.DeviceDefinitionVersionId == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetFunctionDefinition

```erlang
valid {
    input.ReqMap.FunctionDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetFunctionDefinitionVersion

```erlang
valid {
    input.ReqMap.FunctionDefinitionId == STRING
    input.ReqMap.FunctionDefinitionVersionId == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetGroup

```erlang
valid {
    input.ReqMap.GroupId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetGroupCertificateAuthority

```erlang
valid {
    input.ReqMap.CertificateAuthorityId == STRING
    input.ReqMap.GroupId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetGroupCertificateConfiguration

```erlang
valid {
    input.ReqMap.GroupId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetGroupVersion

```erlang
valid {
    input.ReqMap.GroupId == STRING
    input.ReqMap.GroupVersionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetLoggerDefinition

```erlang
valid {
    input.ReqMap.LoggerDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetLoggerDefinitionVersion

```erlang
valid {
    input.ReqMap.LoggerDefinitionId == STRING
    input.ReqMap.LoggerDefinitionVersionId == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetResourceDefinition

```erlang
valid {
    input.ReqMap.ResourceDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetResourceDefinitionVersion

```erlang
valid {
    input.ReqMap.ResourceDefinitionId == STRING
    input.ReqMap.ResourceDefinitionVersionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetServiceRoleForAccount

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

# GetSubscriptionDefinition

```erlang
valid {
    input.ReqMap.SubscriptionDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetSubscriptionDefinitionVersion

```erlang
valid {
    input.ReqMap.SubscriptionDefinitionId == STRING
    input.ReqMap.SubscriptionDefinitionVersionId == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetThingRuntimeConfiguration

```erlang
valid {
    input.ReqMap.ThingName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListBulkDeploymentDetailedReports

```erlang
valid {
    input.ReqMap.BulkDeploymentId == STRING
    input.Qs.MaxResults == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListBulkDeployments

```erlang
valid {
    input.Qs.MaxResults == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListClientDevicesAssociatedWithCoreDevice

```erlang
valid {
    input.ReqMap.coreDeviceThingName == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListComponentVersions

```erlang
valid {
    input.ReqMap.arn == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListComponents

```erlang
enum_ComponentVisibilityScope := [ "PRIVATE", "PUBLIC" ]

valid {
    input.Qs.scope == enum_ComponentVisibilityScope[_]
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListConnectorDefinitionVersions

```erlang
valid {
    input.ReqMap.ConnectorDefinitionId == STRING
    input.Qs.MaxResults == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListConnectorDefinitions

```erlang
valid {
    input.Qs.MaxResults == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListCoreDefinitionVersions

```erlang
valid {
    input.ReqMap.CoreDefinitionId == STRING
    input.Qs.MaxResults == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListCoreDefinitions

```erlang
valid {
    input.Qs.MaxResults == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListCoreDevices

```erlang
enum_CoreDeviceStatus := [ "HEALTHY", "UNHEALTHY" ]

valid {
    input.Qs.thingGroupArn == STRING
    input.Qs.status == enum_CoreDeviceStatus[_]
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.Qs.runtime == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListDeployments

```erlang
enum_DeploymentHistoryFilter := [ "ALL", "LATEST_ONLY" ]

valid {
    input.Qs.targetArn == STRING
    input.Qs.historyFilter == enum_DeploymentHistoryFilter[_]
    input.Qs.parentTargetArn == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListDeviceDefinitionVersions

```erlang
valid {
    input.ReqMap.DeviceDefinitionId == STRING
    input.Qs.MaxResults == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListDeviceDefinitions

```erlang
valid {
    input.Qs.MaxResults == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListEffectiveDeployments

```erlang
valid {
    input.ReqMap.coreDeviceThingName == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListFunctionDefinitionVersions

```erlang
valid {
    input.ReqMap.FunctionDefinitionId == STRING
    input.Qs.MaxResults == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListFunctionDefinitions

```erlang
valid {
    input.Qs.MaxResults == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListGroupCertificateAuthorities

```erlang
valid {
    input.ReqMap.GroupId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListGroupVersions

```erlang
valid {
    input.ReqMap.GroupId == STRING
    input.Qs.MaxResults == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListGroups

```erlang
valid {
    input.Qs.MaxResults == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListInstalledComponents

```erlang
enum_InstalledComponentTopologyFilter := [ "ALL", "ROOT" ]

valid {
    input.ReqMap.coreDeviceThingName == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.Qs.topologyFilter == enum_InstalledComponentTopologyFilter[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListLoggerDefinitionVersions

```erlang
valid {
    input.ReqMap.LoggerDefinitionId == STRING
    input.Qs.MaxResults == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListLoggerDefinitions

```erlang
valid {
    input.Qs.MaxResults == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListResourceDefinitionVersions

```erlang
valid {
    input.ReqMap.ResourceDefinitionId == STRING
    input.Qs.MaxResults == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListResourceDefinitions

```erlang
valid {
    input.Qs.MaxResults == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListSubscriptionDefinitionVersions

```erlang
valid {
    input.ReqMap.SubscriptionDefinitionId == STRING
    input.Qs.MaxResults == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListSubscriptionDefinitions

```erlang
valid {
    input.Qs.MaxResults == STRING
    input.Qs.NextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListTagsForResource

```erlang
valid {
    input.ReqMap.resourceArn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ResetDeployments

```erlang
valid {
    input.Body.Force == BOOLEAN
    input.ReqMap.GroupId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ResolveComponentCandidates

```erlang
valid {
    input.Body.platform.name == STRING
    input.Body.platform.attributes.STRING == STRING
    input.Body.componentCandidates[_].componentName == STRING
    input.Body.componentCandidates[_].componentVersion == STRING
    input.Body.componentCandidates[_].versionRequirements.STRING == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# StartBulkDeployment

```erlang
valid {
    input.Body.ExecutionRoleArn == STRING
    input.Body.InputFileUri == STRING
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# StopBulkDeployment

```erlang
valid {
    input.ReqMap.BulkDeploymentId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# TagResource

```erlang
valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.resourceArn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# UntagResource

```erlang
valid {
    input.ReqMap.resourceArn == STRING
    input.Qs.tagKeys[_] == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# UpdateConnectivityInfo

```erlang
valid {
    input.Body.ConnectivityInfo[_].Id == STRING
    input.Body.ConnectivityInfo[_].HostAddress == STRING
    input.Body.ConnectivityInfo[_].PortNumber == INTEGER
    input.Body.ConnectivityInfo[_].Metadata == STRING
    input.ReqMap.thingName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# UpdateConnectorDefinition

```erlang
valid {
    input.Body.Name == STRING
    input.ReqMap.ConnectorDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# UpdateCoreDefinition

```erlang
valid {
    input.Body.Name == STRING
    input.ReqMap.CoreDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# UpdateDeviceDefinition

```erlang
valid {
    input.Body.Name == STRING
    input.ReqMap.DeviceDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# UpdateFunctionDefinition

```erlang
valid {
    input.Body.Name == STRING
    input.ReqMap.FunctionDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# UpdateGroup

```erlang
valid {
    input.Body.Name == STRING
    input.ReqMap.GroupId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# UpdateGroupCertificateConfiguration

```erlang
valid {
    input.Body.CertificateExpiryInMilliseconds == STRING
    input.ReqMap.GroupId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# UpdateLoggerDefinition

```erlang
valid {
    input.Body.Name == STRING
    input.ReqMap.LoggerDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# UpdateResourceDefinition

```erlang
valid {
    input.Body.Name == STRING
    input.ReqMap.ResourceDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# UpdateSubscriptionDefinition

```erlang
valid {
    input.Body.Name == STRING
    input.ReqMap.SubscriptionDefinitionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# UpdateThingRuntimeConfiguration

```erlang
enum_Telemetry := [ "On", "Off" ]

valid {
    input.Body.TelemetryConfiguration.Telemetry == enum_Telemetry[_]
    input.ReqMap.ThingName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```