MICROSOFT.DATABOX

Jobs_BookShipmentPickUp

valid {
    input.Body.startTime == STRING
    input.Body.endTime == STRING
    input.Body.shipmentLocation == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.jobName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Jobs_Cancel

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

Jobs_Create

enum_DataAccountDetailsDataAccountType := [ "StorageAccount", "ManagedDisk" ]
enum_DataExportDetailsLogCollectionLevel := [ "Error", "Verbose" ]
enum_DataImportDetailsLogCollectionLevel := [ "Error", "Verbose" ]
enum_EncryptionPreferencesDoubleEncryption := [ "Enabled", "Disabled" ]
enum_EncryptionPreferencesHardwareEncryption := [ "Enabled", "Disabled" ]
enum_FilterFileDetailsFilterFileType := [ "AzureBlob", "AzureFile" ]
enum_JobDetailsJobDetailsType := [ "DataBox", "DataBoxDisk", "DataBoxHeavy", "DataBoxCustomerDisk" ]
enum_JobPropertiesDeliveryType := [ "NonScheduled", "Scheduled" ]
enum_JobPropertiesTransferType := [ "ImportToAzure", "ExportFromAzure" ]
enum_KeyEncryptionKeyKekType := [ "MicrosoftManaged", "CustomerManaged" ]
enum_NotificationPreferenceStageName := [ "DevicePrepared", "Dispatched", "Delivered", "PickedUp", "AtAzureDC", "DataCopy", "Created", "ShippedToCustomer" ]
enum_PreferencesStorageAccountAccessTierPreferences := [ "Archive" ]
enum_ShippingAddressAddressType := [ "None", "Residential", "Commercial" ]
enum_SkuModel := [ "DataBox", "DataBoxDisk", "DataBoxHeavy", "DataBoxCustomerDisk", "DataBoxV2x100", "DataBoxV2x500" ]
enum_SkuName := [ "DataBox", "DataBoxDisk", "DataBoxHeavy", "DataBoxCustomerDisk" ]
enum_TransferAllDetailsDataAccountType := [ "StorageAccount", "ManagedDisk" ]
enum_TransferConfigurationTransferConfigurationType := [ "TransferAll", "TransferUsingFilter" ]
enum_TransferFilterDetailsDataAccountType := [ "StorageAccount", "ManagedDisk" ]
enum_TransportPreferencesPreferredShipmentType := [ "CustomerManaged", "MicrosoftManaged" ]

valid {
    input.Body.properties.transferType == enum_JobPropertiesTransferType[_]
    input.Body.properties.details.contactDetails.contactName == STRING
    input.Body.properties.details.contactDetails.phone == STRING
    input.Body.properties.details.contactDetails.phoneExtension == STRING
    input.Body.properties.details.contactDetails.mobile == STRING
    input.Body.properties.details.contactDetails.emailList[_] == STRING
    input.Body.properties.details.contactDetails.notificationPreference[_].stageName == enum_NotificationPreferenceStageName[_]
    input.Body.properties.details.contactDetails.notificationPreference[_].sendNotification == BOOLEAN
    input.Body.properties.details.shippingAddress.streetAddress1 == STRING
    input.Body.properties.details.shippingAddress.streetAddress2 == STRING
    input.Body.properties.details.shippingAddress.streetAddress3 == STRING
    input.Body.properties.details.shippingAddress.city == STRING
    input.Body.properties.details.shippingAddress.stateOrProvince == STRING
    input.Body.properties.details.shippingAddress.country == STRING
    input.Body.properties.details.shippingAddress.postalCode == STRING
    input.Body.properties.details.shippingAddress.zipExtendedCode == STRING
    input.Body.properties.details.shippingAddress.companyName == STRING
    input.Body.properties.details.shippingAddress.addressType == enum_ShippingAddressAddressType[_]
    input.Body.properties.details.shippingAddress.skipAddressValidation == BOOLEAN
    input.Body.properties.details.shippingAddress.taxIdentificationNumber == STRING
    input.Body.properties.details.dataImportDetails[_].accountDetails.dataAccountType == enum_DataAccountDetailsDataAccountType[_]
    input.Body.properties.details.dataImportDetails[_].accountDetails.sharePassword == STRING
    input.Body.properties.details.dataImportDetails[_].logCollectionLevel == enum_DataImportDetailsLogCollectionLevel[_]
    input.Body.properties.details.dataExportDetails[_].transferConfiguration.transferConfigurationType == enum_TransferConfigurationTransferConfigurationType[_]
    input.Body.properties.details.dataExportDetails[_].transferConfiguration.transferFilterDetails.include.dataAccountType == enum_TransferFilterDetailsDataAccountType[_]
    input.Body.properties.details.dataExportDetails[_].transferConfiguration.transferFilterDetails.include.blobFilterDetails.blobPrefixList[_] == STRING
    input.Body.properties.details.dataExportDetails[_].transferConfiguration.transferFilterDetails.include.blobFilterDetails.blobPathList[_] == STRING
    input.Body.properties.details.dataExportDetails[_].transferConfiguration.transferFilterDetails.include.blobFilterDetails.containerList[_] == STRING
    input.Body.properties.details.dataExportDetails[_].transferConfiguration.transferFilterDetails.include.azureFileFilterDetails.filePrefixList[_] == STRING
    input.Body.properties.details.dataExportDetails[_].transferConfiguration.transferFilterDetails.include.azureFileFilterDetails.filePathList[_] == STRING
    input.Body.properties.details.dataExportDetails[_].transferConfiguration.transferFilterDetails.include.azureFileFilterDetails.fileShareList[_] == STRING
    input.Body.properties.details.dataExportDetails[_].transferConfiguration.transferFilterDetails.include.filterFileDetails[_].filterFileType == enum_FilterFileDetailsFilterFileType[_]
    input.Body.properties.details.dataExportDetails[_].transferConfiguration.transferFilterDetails.include.filterFileDetails[_].filterFilePath == STRING
    input.Body.properties.details.dataExportDetails[_].transferConfiguration.transferAllDetails.include.dataAccountType == enum_TransferAllDetailsDataAccountType[_]
    input.Body.properties.details.dataExportDetails[_].transferConfiguration.transferAllDetails.include.transferAllBlobs == BOOLEAN
    input.Body.properties.details.dataExportDetails[_].transferConfiguration.transferAllDetails.include.transferAllFiles == BOOLEAN
    input.Body.properties.details.dataExportDetails[_].logCollectionLevel == enum_DataExportDetailsLogCollectionLevel[_]
    input.Body.properties.details.dataExportDetails[_].accountDetails.dataAccountType == enum_DataAccountDetailsDataAccountType[_]
    input.Body.properties.details.dataExportDetails[_].accountDetails.sharePassword == STRING
    input.Body.properties.details.jobDetailsType == enum_JobDetailsJobDetailsType[_]
    input.Body.properties.details.preferences.preferredDataCenterRegion[_] == STRING
    input.Body.properties.details.preferences.transportPreferences.preferredShipmentType == enum_TransportPreferencesPreferredShipmentType[_]
    input.Body.properties.details.preferences.reverseTransportPreferences.preferredShipmentType == enum_TransportPreferencesPreferredShipmentType[_]
    input.Body.properties.details.preferences.encryptionPreferences.doubleEncryption == enum_EncryptionPreferencesDoubleEncryption[_]
    input.Body.properties.details.preferences.encryptionPreferences.hardwareEncryption == enum_EncryptionPreferencesHardwareEncryption[_]
    input.Body.properties.details.preferences.storageAccountAccessTierPreferences[_] == enum_PreferencesStorageAccountAccessTierPreferences[_]
    input.Body.properties.details.reverseShippingDetails.contactDetails.contactName == STRING
    input.Body.properties.details.reverseShippingDetails.contactDetails.phone == STRING
    input.Body.properties.details.reverseShippingDetails.contactDetails.phoneExtension == STRING
    input.Body.properties.details.reverseShippingDetails.contactDetails.mobile == STRING
    input.Body.properties.details.reverseShippingDetails.shippingAddress.streetAddress1 == STRING
    input.Body.properties.details.reverseShippingDetails.shippingAddress.streetAddress2 == STRING
    input.Body.properties.details.reverseShippingDetails.shippingAddress.streetAddress3 == STRING
    input.Body.properties.details.reverseShippingDetails.shippingAddress.city == STRING
    input.Body.properties.details.reverseShippingDetails.shippingAddress.stateOrProvince == STRING
    input.Body.properties.details.reverseShippingDetails.shippingAddress.country == STRING
    input.Body.properties.details.reverseShippingDetails.shippingAddress.postalCode == STRING
    input.Body.properties.details.reverseShippingDetails.shippingAddress.zipExtendedCode == STRING
    input.Body.properties.details.reverseShippingDetails.shippingAddress.companyName == STRING
    input.Body.properties.details.reverseShippingDetails.shippingAddress.addressType == enum_ShippingAddressAddressType[_]
    input.Body.properties.details.reverseShippingDetails.shippingAddress.skipAddressValidation == BOOLEAN
    input.Body.properties.details.reverseShippingDetails.shippingAddress.taxIdentificationNumber == STRING
    input.Body.properties.details.keyEncryptionKey.kekType == enum_KeyEncryptionKeyKekType[_]
    input.Body.properties.details.keyEncryptionKey.identityProperties.type == STRING
    input.Body.properties.details.keyEncryptionKey.identityProperties.userAssigned.resourceId == STRING
    input.Body.properties.details.keyEncryptionKey.kekUrl == STRING
    input.Body.properties.details.keyEncryptionKey.kekVaultResourceID == STRING
    input.Body.properties.details.expectedDataSizeInTeraBytes == INTEGER
    input.Body.properties.deliveryType == enum_JobPropertiesDeliveryType[_]
    input.Body.properties.deliveryInfo.scheduledDateTime == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.Body.sku.name == enum_SkuName[_]
    input.Body.sku.displayName == STRING
    input.Body.sku.family == STRING
    input.Body.sku.model == enum_SkuModel[_]
    input.Body.identity.type == STRING
    input.Body.identity.userAssignedIdentities.STRING == {}
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.jobName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Jobs_Delete

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

Jobs_Get

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

Jobs_List

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

Jobs_ListByResourceGroup

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

Jobs_ListCredentials

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

Jobs_MarkDevicesShipped

valid {
    input.Body.deliverToDcPackageDetails.carrierName == STRING
    input.Body.deliverToDcPackageDetails.trackingId == STRING
    input.ReqMap.jobName == STRING
    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
}

Jobs_Update

enum_EncryptionPreferencesDoubleEncryption := [ "Enabled", "Disabled" ]
enum_EncryptionPreferencesHardwareEncryption := [ "Enabled", "Disabled" ]
enum_KeyEncryptionKeyKekType := [ "MicrosoftManaged", "CustomerManaged" ]
enum_NotificationPreferenceStageName := [ "DevicePrepared", "Dispatched", "Delivered", "PickedUp", "AtAzureDC", "DataCopy", "Created", "ShippedToCustomer" ]
enum_PreferencesStorageAccountAccessTierPreferences := [ "Archive" ]
enum_ShippingAddressAddressType := [ "None", "Residential", "Commercial" ]
enum_TransportPreferencesPreferredShipmentType := [ "CustomerManaged", "MicrosoftManaged" ]

valid {
    input.Body.properties.details.contactDetails.contactName == STRING
    input.Body.properties.details.contactDetails.phone == STRING
    input.Body.properties.details.contactDetails.phoneExtension == STRING
    input.Body.properties.details.contactDetails.mobile == STRING
    input.Body.properties.details.contactDetails.emailList[_] == STRING
    input.Body.properties.details.contactDetails.notificationPreference[_].stageName == enum_NotificationPreferenceStageName[_]
    input.Body.properties.details.contactDetails.notificationPreference[_].sendNotification == BOOLEAN
    input.Body.properties.details.shippingAddress.streetAddress1 == STRING
    input.Body.properties.details.shippingAddress.streetAddress2 == STRING
    input.Body.properties.details.shippingAddress.streetAddress3 == STRING
    input.Body.properties.details.shippingAddress.city == STRING
    input.Body.properties.details.shippingAddress.stateOrProvince == STRING
    input.Body.properties.details.shippingAddress.country == STRING
    input.Body.properties.details.shippingAddress.postalCode == STRING
    input.Body.properties.details.shippingAddress.zipExtendedCode == STRING
    input.Body.properties.details.shippingAddress.companyName == STRING
    input.Body.properties.details.shippingAddress.addressType == enum_ShippingAddressAddressType[_]
    input.Body.properties.details.shippingAddress.skipAddressValidation == BOOLEAN
    input.Body.properties.details.shippingAddress.taxIdentificationNumber == STRING
    input.Body.properties.details.reverseShippingDetails.contactDetails.contactName == STRING
    input.Body.properties.details.reverseShippingDetails.contactDetails.phone == STRING
    input.Body.properties.details.reverseShippingDetails.contactDetails.phoneExtension == STRING
    input.Body.properties.details.reverseShippingDetails.contactDetails.mobile == STRING
    input.Body.properties.details.reverseShippingDetails.shippingAddress.streetAddress1 == STRING
    input.Body.properties.details.reverseShippingDetails.shippingAddress.streetAddress2 == STRING
    input.Body.properties.details.reverseShippingDetails.shippingAddress.streetAddress3 == STRING
    input.Body.properties.details.reverseShippingDetails.shippingAddress.city == STRING
    input.Body.properties.details.reverseShippingDetails.shippingAddress.stateOrProvince == STRING
    input.Body.properties.details.reverseShippingDetails.shippingAddress.country == STRING
    input.Body.properties.details.reverseShippingDetails.shippingAddress.postalCode == STRING
    input.Body.properties.details.reverseShippingDetails.shippingAddress.zipExtendedCode == STRING
    input.Body.properties.details.reverseShippingDetails.shippingAddress.companyName == STRING
    input.Body.properties.details.reverseShippingDetails.shippingAddress.addressType == enum_ShippingAddressAddressType[_]
    input.Body.properties.details.reverseShippingDetails.shippingAddress.skipAddressValidation == BOOLEAN
    input.Body.properties.details.reverseShippingDetails.shippingAddress.taxIdentificationNumber == STRING
    input.Body.properties.details.preferences.preferredDataCenterRegion[_] == STRING
    input.Body.properties.details.preferences.transportPreferences.preferredShipmentType == enum_TransportPreferencesPreferredShipmentType[_]
    input.Body.properties.details.preferences.reverseTransportPreferences.preferredShipmentType == enum_TransportPreferencesPreferredShipmentType[_]
    input.Body.properties.details.preferences.encryptionPreferences.doubleEncryption == enum_EncryptionPreferencesDoubleEncryption[_]
    input.Body.properties.details.preferences.encryptionPreferences.hardwareEncryption == enum_EncryptionPreferencesHardwareEncryption[_]
    input.Body.properties.details.preferences.storageAccountAccessTierPreferences[_] == enum_PreferencesStorageAccountAccessTierPreferences[_]
    input.Body.properties.details.keyEncryptionKey.kekType == enum_KeyEncryptionKeyKekType[_]
    input.Body.properties.details.keyEncryptionKey.identityProperties.type == STRING
    input.Body.properties.details.keyEncryptionKey.identityProperties.userAssigned.resourceId == STRING
    input.Body.properties.details.keyEncryptionKey.kekUrl == STRING
    input.Body.properties.details.keyEncryptionKey.kekVaultResourceID == STRING
    input.Body.properties.details.returnToCustomerPackageDetails.carrierAccountNumber == STRING
    input.Body.properties.details.returnToCustomerPackageDetails.carrierName == STRING
    input.Body.properties.details.returnToCustomerPackageDetails.trackingId == STRING
    input.Body.tags.STRING == STRING
    input.Body.identity.type == STRING
    input.Body.identity.userAssignedIdentities.STRING == {}
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.jobName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Mitigate

enum_MitigateJobRequestCustomerResolutionCode := [ "None", "MoveToCleanUpDevice", "Resume", "Restart", "ReachOutToOperation" ]
enum_MitigateJobRequestSerialNumberCustomerResolutionMap := [ "None", "MoveToCleanUpDevice", "Resume", "Restart", "ReachOutToOperation" ]

valid {
    input.Body.customerResolutionCode == enum_MitigateJobRequestCustomerResolutionCode[_]
    input.Body.serialNumberCustomerResolutionMap.STRING == enum_MitigateJobRequestSerialNumberCustomerResolutionMap[_]
    input.ReqMap.jobName == STRING
    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
}

Operations_List

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

Service_ListAvailableSkus

enum_AvailableSkuRequestSkuNames := [ "DataBox", "DataBoxDisk", "DataBoxHeavy" ]
enum_AvailableSkuRequestTransferType := [ "ImportToAzure" ]

valid {
    input.Body.transferType == enum_AvailableSkuRequestTransferType[_]
    input.Body.country == STRING
    input.Body.location == STRING
    input.Body.skuNames[_] == enum_AvailableSkuRequestSkuNames[_]
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.location == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

Service_ListAvailableSkusByResourceGroup

enum_AvailableSkuRequestSkuNames := [ "DataBox", "DataBoxDisk", "DataBoxHeavy", "DataBoxCustomerDisk" ]
enum_AvailableSkuRequestTransferType := [ "ImportToAzure", "ExportFromAzure" ]

valid {
    input.Body.transferType == enum_AvailableSkuRequestTransferType[_]
    input.Body.country == STRING
    input.Body.location == STRING
    input.Body.skuNames[_] == enum_AvailableSkuRequestSkuNames[_]
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.location == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Service_RegionConfiguration

enum_DatacenterAddressRequestSkuName := [ "DataBox", "DataBoxDisk", "DataBoxHeavy", "DataBoxCustomerDisk" ]
enum_DeviceCapabilityRequestSkuName := [ "DataBox", "DataBoxDisk", "DataBoxHeavy", "DataBoxCustomerDisk" ]
enum_ScheduleAvailabilityRequestSkuName := [ "DataBox", "DataBoxDisk", "DataBoxHeavy", "DataBoxCustomerDisk" ]
enum_TransportAvailabilityRequestSkuName := [ "DataBox", "DataBoxDisk", "DataBoxHeavy", "DataBoxCustomerDisk" ]

valid {
    input.Body.scheduleAvailabilityRequest.storageLocation == STRING
    input.Body.scheduleAvailabilityRequest.skuName == enum_ScheduleAvailabilityRequestSkuName[_]
    input.Body.scheduleAvailabilityRequest.country == STRING
    input.Body.transportAvailabilityRequest.skuName == enum_TransportAvailabilityRequestSkuName[_]
    input.Body.datacenterAddressRequest.storageLocation == STRING
    input.Body.datacenterAddressRequest.skuName == enum_DatacenterAddressRequestSkuName[_]
    input.Body.deviceCapabilityRequest.skuName == enum_DeviceCapabilityRequestSkuName[_]
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.location == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

Service_RegionConfigurationByResourceGroup

enum_DatacenterAddressRequestSkuName := [ "DataBox", "DataBoxDisk", "DataBoxHeavy", "DataBoxCustomerDisk" ]
enum_DeviceCapabilityRequestSkuName := [ "DataBox", "DataBoxDisk", "DataBoxHeavy", "DataBoxCustomerDisk" ]
enum_ScheduleAvailabilityRequestSkuName := [ "DataBox", "DataBoxDisk", "DataBoxHeavy", "DataBoxCustomerDisk" ]
enum_TransportAvailabilityRequestSkuName := [ "DataBox", "DataBoxDisk", "DataBoxHeavy", "DataBoxCustomerDisk" ]

valid {
    input.Body.scheduleAvailabilityRequest.storageLocation == STRING
    input.Body.scheduleAvailabilityRequest.skuName == enum_ScheduleAvailabilityRequestSkuName[_]
    input.Body.scheduleAvailabilityRequest.country == STRING
    input.Body.transportAvailabilityRequest.skuName == enum_TransportAvailabilityRequestSkuName[_]
    input.Body.datacenterAddressRequest.storageLocation == STRING
    input.Body.datacenterAddressRequest.skuName == enum_DatacenterAddressRequestSkuName[_]
    input.Body.deviceCapabilityRequest.skuName == enum_DeviceCapabilityRequestSkuName[_]
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.location == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Service_ValidateAddress

enum_ShippingAddressAddressType := [ "None", "Residential", "Commercial" ]
enum_TransportPreferencesPreferredShipmentType := [ "CustomerManaged", "MicrosoftManaged" ]
enum_ValidateAddressDeviceType := [ "DataBox", "DataBoxDisk", "DataBoxHeavy", "DataBoxCustomerDisk" ]
enum_ValidationInputRequestValidationType := [ "ValidateAddress", "ValidateSubscriptionIsAllowedToCreateJob", "ValidatePreferences", "ValidateCreateOrderLimit", "ValidateSkuAvailability", "ValidateDataTransferDetails" ]

valid {
    input.Body.shippingAddress.streetAddress1 == STRING
    input.Body.shippingAddress.streetAddress2 == STRING
    input.Body.shippingAddress.streetAddress3 == STRING
    input.Body.shippingAddress.city == STRING
    input.Body.shippingAddress.stateOrProvince == STRING
    input.Body.shippingAddress.country == STRING
    input.Body.shippingAddress.postalCode == STRING
    input.Body.shippingAddress.zipExtendedCode == STRING
    input.Body.shippingAddress.companyName == STRING
    input.Body.shippingAddress.addressType == enum_ShippingAddressAddressType[_]
    input.Body.shippingAddress.skipAddressValidation == BOOLEAN
    input.Body.shippingAddress.taxIdentificationNumber == STRING
    input.Body.deviceType == enum_ValidateAddressDeviceType[_]
    input.Body.transportPreferences.preferredShipmentType == enum_TransportPreferencesPreferredShipmentType[_]
    input.Body.validationType == enum_ValidationInputRequestValidationType[_]
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.location == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

Service_ValidateInputs

enum_ValidationInputRequestValidationType := [ "ValidateAddress", "ValidateSubscriptionIsAllowedToCreateJob", "ValidatePreferences", "ValidateCreateOrderLimit", "ValidateSkuAvailability", "ValidateDataTransferDetails" ]
enum_ValidationRequestValidationCategory := [ "JobCreationValidation" ]

valid {
    input.Body.validationCategory == enum_ValidationRequestValidationCategory[_]
    input.Body.individualRequestDetails[_].validationType == enum_ValidationInputRequestValidationType[_]
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.location == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

Service_ValidateInputsByResourceGroup

enum_ValidationInputRequestValidationType := [ "ValidateAddress", "ValidateSubscriptionIsAllowedToCreateJob", "ValidatePreferences", "ValidateCreateOrderLimit", "ValidateSkuAvailability", "ValidateDataTransferDetails" ]
enum_ValidationRequestValidationCategory := [ "JobCreationValidation" ]

valid {
    input.Body.validationCategory == enum_ValidationRequestValidationCategory[_]
    input.Body.individualRequestDetails[_].validationType == enum_ValidationInputRequestValidationType[_]
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.location == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}