MICROSOFT.RECOMMENDATIONSSERVICE

Accounts_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
}

Accounts_CreateOrUpdate

enum_AccountResourcePropertiesConfiguration := [ "Free", "Capacity" ]
enum_EndpointAuthenticationPrincipalType := [ "Application", "User" ]
enum_ManagedServiceIdentityType := [ "None", "SystemAssigned", "UserAssigned", "SystemAssigned,UserAssigned" ]

valid {
    input.Body.properties.configuration == enum_AccountResourcePropertiesConfiguration[_]
    input.Body.properties.endpointAuthentications[_].aadTenantID == STRING
    input.Body.properties.endpointAuthentications[_].principalID == STRING
    input.Body.properties.endpointAuthentications[_].principalType == enum_EndpointAuthenticationPrincipalType[_]
    input.Body.properties.cors[_].allowedOrigins[_] == STRING
    input.Body.properties.cors[_].allowedMethods[_] == STRING
    input.Body.properties.cors[_].allowedHeaders[_] == STRING
    input.Body.properties.cors[_].exposedHeaders[_] == STRING
    input.Body.properties.cors[_].maxAgeInSeconds == INTEGER
    input.Body.properties.reportsConnectionString == STRING
    input.Body.identity.type == enum_ManagedServiceIdentityType[_]
    input.Body.identity.userAssignedIdentities.STRING == {}
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.accountName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Accounts_Delete

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

Accounts_Get

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

Accounts_GetStatus

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

Accounts_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
}

Accounts_ListBySubscription

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

Accounts_Update

enum_EndpointAuthenticationPrincipalType := [ "Application", "User" ]
enum_ManagedServiceIdentityType := [ "None", "SystemAssigned", "UserAssigned", "SystemAssigned,UserAssigned" ]

valid {
    input.Body.tags.STRING == STRING
    input.Body.properties.endpointAuthentications[_].aadTenantID == STRING
    input.Body.properties.endpointAuthentications[_].principalID == STRING
    input.Body.properties.endpointAuthentications[_].principalType == enum_EndpointAuthenticationPrincipalType[_]
    input.Body.properties.cors[_].allowedOrigins[_] == STRING
    input.Body.properties.cors[_].allowedMethods[_] == STRING
    input.Body.properties.cors[_].allowedHeaders[_] == STRING
    input.Body.properties.cors[_].exposedHeaders[_] == STRING
    input.Body.properties.cors[_].maxAgeInSeconds == INTEGER
    input.Body.properties.reportsConnectionString == STRING
    input.Body.identity.type == enum_ManagedServiceIdentityType[_]
    input.Body.identity.userAssignedIdentities.STRING == {}
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.accountName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Modeling_CreateOrUpdate

enum_ModelingResourcePropertiesFeatures := [ "Basic", "Standard", "Premium" ]
enum_ModelingResourcePropertiesFrequency := [ "Low", "Medium", "High" ]
enum_ModelingResourcePropertiesSize := [ "Small", "Medium", "Large" ]

valid {
    input.Body.properties.features == enum_ModelingResourcePropertiesFeatures[_]
    input.Body.properties.frequency == enum_ModelingResourcePropertiesFrequency[_]
    input.Body.properties.size == enum_ModelingResourcePropertiesSize[_]
    input.Body.properties.inputData.connectionString == STRING
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.accountName == STRING
    input.ReqMap.modelingName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Modeling_Delete

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

Modeling_Get

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

Modeling_ListByAccountResource

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

Modeling_Update

valid {
    input.Body.tags.STRING == STRING
    input.Body.properties.inputData.connectionString == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.accountName == STRING
    input.ReqMap.modelingName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

OperationStatuses_Get

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

Operations_List

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

ServiceEndpoints_CreateOrUpdate

valid {
    input.Body.properties.preAllocatedCapacity == INTEGER
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.accountName == STRING
    input.ReqMap.serviceEndpointName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ServiceEndpoints_Delete

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

ServiceEndpoints_Get

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

ServiceEndpoints_ListByAccountResource

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

ServiceEndpoints_Update

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