MICROSOFT.IOTCENTRAL

Apps_CheckNameAvailability

valid {
    input.Body.name == STRING
    input.Body.type == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

Apps_CheckSubdomainAvailability

valid {
    input.Body.name == STRING
    input.Body.type == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

Apps_CreateOrUpdate

enum_AppSkuInfoName := [ "ST0", "ST1", "ST2" ]
enum_NetworkAction := [ "Allow", "Deny" ]
enum_PublicNetworkAccess := [ "Enabled", "Disabled" ]
enum_SystemAssignedServiceIdentityType := [ "None", "SystemAssigned" ]

valid {
    input.Body.properties.displayName == STRING
    input.Body.properties.subdomain == STRING
    input.Body.properties.template == STRING
    input.Body.properties.publicNetworkAccess == enum_PublicNetworkAccess[_]
    input.Body.properties.networkRuleSets.applyToDevices == BOOLEAN
    input.Body.properties.networkRuleSets.applyToIoTCentral == BOOLEAN
    input.Body.properties.networkRuleSets.defaultAction == enum_NetworkAction[_]
    input.Body.properties.networkRuleSets.ipRules[_].filterName == STRING
    input.Body.properties.networkRuleSets.ipRules[_].ipMask == STRING
    input.Body.sku.name == enum_AppSkuInfoName[_]
    input.Body.identity.type == enum_SystemAssignedServiceIdentityType[_]
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.resourceName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Apps_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.resourceName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Apps_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.resourceName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Apps_ListByResourceGroup

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Apps_ListBySubscription

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

Apps_ListTemplates

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

Apps_Update

enum_AppSkuInfoName := [ "ST0", "ST1", "ST2" ]
enum_NetworkAction := [ "Allow", "Deny" ]
enum_PublicNetworkAccess := [ "Enabled", "Disabled" ]
enum_SystemAssignedServiceIdentityType := [ "None", "SystemAssigned" ]

valid {
    input.Body.tags.STRING == STRING
    input.Body.sku.name == enum_AppSkuInfoName[_]
    input.Body.properties.displayName == STRING
    input.Body.properties.subdomain == STRING
    input.Body.properties.template == STRING
    input.Body.properties.publicNetworkAccess == enum_PublicNetworkAccess[_]
    input.Body.properties.networkRuleSets.applyToDevices == BOOLEAN
    input.Body.properties.networkRuleSets.applyToIoTCentral == BOOLEAN
    input.Body.properties.networkRuleSets.defaultAction == enum_NetworkAction[_]
    input.Body.properties.networkRuleSets.ipRules[_].filterName == STRING
    input.Body.properties.networkRuleSets.ipRules[_].ipMask == STRING
    input.Body.identity.type == enum_SystemAssignedServiceIdentityType[_]
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.resourceName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Operations_List

valid {
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

PrivateEndpointConnections_Create

enum_PrivateEndpointServiceConnectionStatus := [ "Pending", "Approved", "Rejected" ]

valid {
    input.Body.properties.privateEndpoint == {}
    input.Body.properties.privateLinkServiceConnectionState.status == enum_PrivateEndpointServiceConnectionStatus[_]
    input.Body.properties.privateLinkServiceConnectionState.description == STRING
    input.Body.properties.privateLinkServiceConnectionState.actionsRequired == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.resourceName == STRING
    input.ReqMap.privateEndpointConnectionName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

PrivateEndpointConnections_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.resourceName == STRING
    input.ReqMap.privateEndpointConnectionName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

PrivateEndpointConnections_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.resourceName == STRING
    input.ReqMap.privateEndpointConnectionName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

PrivateEndpointConnections_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.resourceName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

PrivateLinks_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.resourceName == STRING
    input.ReqMap.groupId == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

PrivateLinks_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.resourceName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}