Create windowsDeliveryOptimizationConfiguration
Namespace: microsoft.graph
Important: Microsoft Graph APIs under the /beta version are subject to change; production use is not supported.
Note: The Microsoft Graph API for Intune requires an active Intune license for the tenant.
Create a new windowsDeliveryOptimizationConfiguration object.
This API is available in the following national cloud deployments.
Global service | US Government L4 | US Government L5 (DOD) | China operated by 21Vianet |
---|---|---|---|
✅ | ✅ | ✅ | ✅ |
Permissions
One of the following permissions is required to call this API. To learn more, including how to choose permissions, see Permissions.
Permission type | Permissions (from least to most privileged) |
---|---|
Delegated (work or school account) | DeviceManagementConfiguration.ReadWrite.All |
Delegated (personal Microsoft account) | Not supported. |
Application | DeviceManagementConfiguration.ReadWrite.All |
HTTP Request
POST /deviceManagement/deviceConfigurations
POST /deviceManagement/deviceConfigurations/{deviceConfigurationId}/microsoft.graph.windowsDomainJoinConfiguration/networkAccessConfigurations
Request headers
Header | Value |
---|---|
Authorization | Bearer {token}. Required. Learn more about authentication and authorization. |
Accept | application/json |
Request body
In the request body, supply a JSON representation for the windowsDeliveryOptimizationConfiguration object.
The following table shows the properties that are required when you create the windowsDeliveryOptimizationConfiguration.
Property | Type | Description |
---|---|---|
id | String | Key of the entity. Inherited from deviceConfiguration |
lastModifiedDateTime | DateTimeOffset | DateTime the object was last modified. Inherited from deviceConfiguration |
roleScopeTagIds | String collection | List of Scope Tags for this Entity instance. Inherited from deviceConfiguration |
supportsScopeTags | Boolean | Indicates whether or not the underlying Device Configuration supports the assignment of scope tags. Assigning to the ScopeTags property is not allowed when this value is false and entities will not be visible to scoped users. This occurs for Legacy policies created in Silverlight and can be resolved by deleting and recreating the policy in the Azure Portal. This property is read-only. Inherited from deviceConfiguration |
deviceManagementApplicabilityRuleOsEdition | deviceManagementApplicabilityRuleOsEdition | The OS edition applicability for this Policy. Inherited from deviceConfiguration |
deviceManagementApplicabilityRuleOsVersion | deviceManagementApplicabilityRuleOsVersion | The OS version applicability rule for this Policy. Inherited from deviceConfiguration |
deviceManagementApplicabilityRuleDeviceMode | deviceManagementApplicabilityRuleDeviceMode | The device mode applicability rule for this Policy. Inherited from deviceConfiguration |
createdDateTime | DateTimeOffset | DateTime the object was created. Inherited from deviceConfiguration |
description | String | Admin provided description of the Device Configuration. Inherited from deviceConfiguration |
displayName | String | Admin provided name of the device configuration. Inherited from deviceConfiguration |
version | Int32 | Version of the device configuration. Inherited from deviceConfiguration |
deliveryOptimizationMode | windowsDeliveryOptimizationMode | Specifies the download method that delivery optimization can use to manage network bandwidth consumption for large content distribution scenarios. Possible values are: userDefined , httpOnly , httpWithPeeringNat , httpWithPeeringPrivateGroup , httpWithInternetPeering , simpleDownload , bypassMode . |
restrictPeerSelectionBy | deliveryOptimizationRestrictPeerSelectionByOptions | Specifies to restrict peer selection via selected option. |
Option 1 (Subnet mask) only applies to Delivery Optimization modes Download Mode LAN (1) and Group (2). Possible values are: notConfigured , subnetMask . |
||
groupIdSource | deliveryOptimizationGroupIdSource | Specifies to restrict peer selection to a specfic source. |
The options set in this policy only apply to Delivery Optimization mode Group (2) download mode. If Group (2) isn't set as Download mode, this policy will be ignored. For option 3 - DHCP Option ID, the client will query DHCP Option ID 234 and use the returned GUID value as the Group ID. | ||
bandwidthMode | deliveryOptimizationBandwidth | Specifies foreground and background bandwidth usage using percentages, absolutes, or hours. |
backgroundDownloadFromHttpDelayInSeconds | Int64 | Specifies number of seconds to delay an HTTP source in a background download that is allowed to use peer-to-peer. Valid values 0 to 4294967295 |
foregroundDownloadFromHttpDelayInSeconds | Int64 | Specifies number of seconds to delay an HTTP source in a foreground download that is allowed to use peer-to-peer (0-86400). Valid values 0 to 86400 |
Specifying 0 sets Delivery Optimization to manage this setting using the cloud service. Valid values 0 to 86400 | ||
minimumRamAllowedToPeerInGigabytes | Int32 | Specifies the minimum RAM size in GB to use Peer Caching (1-100000). Valid values 1 to 100000 |
minimumDiskSizeAllowedToPeerInGigabytes | Int32 | Specifies the minimum disk size in GB to use Peer Caching (1-100000). Valid values 1 to 100000 |
Recommended values: 64 GB to 256 GB. Valid values 1 to 100000 | ||
minimumFileSizeToCacheInMegabytes | Int32 | Specifies the minimum content file size in MB enabled to use Peer Caching (1-100000). Valid values 1 to 100000 |
Recommended values: 1 MB to 100,000 MB. Valid values 1 to 100000 | ||
minimumBatteryPercentageAllowedToUpload | Int32 | Specifies the minimum battery percentage to allow the device to upload data (0-100). Valid values 0 to 100 |
The default value is 0. The value 0 (zero) means "not limited" and the cloud service default value will be used. Valid values 0 to 100 | ||
modifyCacheLocation | String | Specifies the drive that Delivery Optimization should use for its cache. |
maximumCacheAgeInDays | Int32 | Specifies the maximum time in days that each file is held in the Delivery Optimization cache after downloading successfully (0-3650). Valid values 0 to 3650 |
maximumCacheSize | deliveryOptimizationMaxCacheSize | Specifies the maximum cache size that Delivery Optimization either as a percentage or in GB. |
vpnPeerCaching | enablement | Specifies whether the device is allowed to participate in Peer Caching while connected via VPN to the domain network. Possible values are: notConfigured , enabled , disabled . |
cacheServerHostNames | String collection | Specifies cache servers host names. |
cacheServerForegroundDownloadFallbackToHttpDelayInSeconds | Int32 | Specifies number of seconds to delay a fall back from cache servers to an HTTP source for a foreground download. Valid values 0 to 2592000. |
cacheServerBackgroundDownloadFallbackToHttpDelayInSeconds | Int32 | Specifies number of seconds to delay a fall back from cache servers to an HTTP source for a background download. Valid values 0 to 2592000. |
Response
If successful, this method returns a 201 Created
response code and a windowsDeliveryOptimizationConfiguration object in the response body.
Example
Request
Here is an example of the request.
POST https://graph.microsoft.com/beta/deviceManagement/deviceConfigurations
Content-type: application/json
Content-length: 2039
{
"@odata.type": "#microsoft.graph.windowsDeliveryOptimizationConfiguration",
"roleScopeTagIds": [
"Role Scope Tag Ids value"
],
"supportsScopeTags": true,
"deviceManagementApplicabilityRuleOsEdition": {
"@odata.type": "microsoft.graph.deviceManagementApplicabilityRuleOsEdition",
"osEditionTypes": [
"windows10EnterpriseN"
],
"name": "Name value",
"ruleType": "exclude"
},
"deviceManagementApplicabilityRuleOsVersion": {
"@odata.type": "microsoft.graph.deviceManagementApplicabilityRuleOsVersion",
"minOSVersion": "Min OSVersion value",
"maxOSVersion": "Max OSVersion value",
"name": "Name value",
"ruleType": "exclude"
},
"deviceManagementApplicabilityRuleDeviceMode": {
"@odata.type": "microsoft.graph.deviceManagementApplicabilityRuleDeviceMode",
"deviceMode": "sModeConfiguration",
"name": "Name value",
"ruleType": "exclude"
},
"description": "Description value",
"displayName": "Display Name value",
"version": 7,
"deliveryOptimizationMode": "httpOnly",
"restrictPeerSelectionBy": "subnetMask",
"groupIdSource": {
"@odata.type": "microsoft.graph.deliveryOptimizationGroupIdSource"
},
"bandwidthMode": {
"@odata.type": "microsoft.graph.deliveryOptimizationBandwidth"
},
"backgroundDownloadFromHttpDelayInSeconds": 8,
"foregroundDownloadFromHttpDelayInSeconds": 8,
"minimumRamAllowedToPeerInGigabytes": 2,
"minimumDiskSizeAllowedToPeerInGigabytes": 7,
"minimumFileSizeToCacheInMegabytes": 1,
"minimumBatteryPercentageAllowedToUpload": 7,
"modifyCacheLocation": "Modify Cache Location value",
"maximumCacheAgeInDays": 5,
"maximumCacheSize": {
"@odata.type": "microsoft.graph.deliveryOptimizationMaxCacheSize"
},
"vpnPeerCaching": "enabled",
"cacheServerHostNames": [
"Cache Server Host Names value"
],
"cacheServerForegroundDownloadFallbackToHttpDelayInSeconds": 9,
"cacheServerBackgroundDownloadFallbackToHttpDelayInSeconds": 9
}
Response
Here is an example of the response. Note: The response object shown here may be truncated for brevity. All of the properties will be returned from an actual call.
HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 2211
{
"@odata.type": "#microsoft.graph.windowsDeliveryOptimizationConfiguration",
"id": "5954ee9b-ee9b-5954-9bee-54599bee5459",
"lastModifiedDateTime": "2017-01-01T00:00:35.1329464-08:00",
"roleScopeTagIds": [
"Role Scope Tag Ids value"
],
"supportsScopeTags": true,
"deviceManagementApplicabilityRuleOsEdition": {
"@odata.type": "microsoft.graph.deviceManagementApplicabilityRuleOsEdition",
"osEditionTypes": [
"windows10EnterpriseN"
],
"name": "Name value",
"ruleType": "exclude"
},
"deviceManagementApplicabilityRuleOsVersion": {
"@odata.type": "microsoft.graph.deviceManagementApplicabilityRuleOsVersion",
"minOSVersion": "Min OSVersion value",
"maxOSVersion": "Max OSVersion value",
"name": "Name value",
"ruleType": "exclude"
},
"deviceManagementApplicabilityRuleDeviceMode": {
"@odata.type": "microsoft.graph.deviceManagementApplicabilityRuleDeviceMode",
"deviceMode": "sModeConfiguration",
"name": "Name value",
"ruleType": "exclude"
},
"createdDateTime": "2017-01-01T00:02:43.5775965-08:00",
"description": "Description value",
"displayName": "Display Name value",
"version": 7,
"deliveryOptimizationMode": "httpOnly",
"restrictPeerSelectionBy": "subnetMask",
"groupIdSource": {
"@odata.type": "microsoft.graph.deliveryOptimizationGroupIdSource"
},
"bandwidthMode": {
"@odata.type": "microsoft.graph.deliveryOptimizationBandwidth"
},
"backgroundDownloadFromHttpDelayInSeconds": 8,
"foregroundDownloadFromHttpDelayInSeconds": 8,
"minimumRamAllowedToPeerInGigabytes": 2,
"minimumDiskSizeAllowedToPeerInGigabytes": 7,
"minimumFileSizeToCacheInMegabytes": 1,
"minimumBatteryPercentageAllowedToUpload": 7,
"modifyCacheLocation": "Modify Cache Location value",
"maximumCacheAgeInDays": 5,
"maximumCacheSize": {
"@odata.type": "microsoft.graph.deliveryOptimizationMaxCacheSize"
},
"vpnPeerCaching": "enabled",
"cacheServerHostNames": [
"Cache Server Host Names value"
],
"cacheServerForegroundDownloadFallbackToHttpDelayInSeconds": 9,
"cacheServerBackgroundDownloadFallbackToHttpDelayInSeconds": 9
}