Namespace: microsoft.graph
Note: The Microsoft Graph API for Intune requires an active Intune license for the tenant.
Update the properties of a iosCompliancePolicy 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
PATCH /deviceManagement/deviceCompliancePolicies/{deviceCompliancePolicyId}
Request body
In the request body, supply a JSON representation for the iosCompliancePolicy object.
The following table shows the properties that are required when you create the iosCompliancePolicy.
Property |
Type |
Description |
id |
String |
Key of the entity. Inherited from deviceCompliancePolicy |
createdDateTime |
DateTimeOffset |
DateTime the object was created. Inherited from deviceCompliancePolicy |
description |
String |
Admin provided description of the Device Configuration. Inherited from deviceCompliancePolicy |
lastModifiedDateTime |
DateTimeOffset |
DateTime the object was last modified. Inherited from deviceCompliancePolicy |
displayName |
String |
Admin provided name of the device configuration. Inherited from deviceCompliancePolicy |
version |
Int32 |
Version of the device configuration. Inherited from deviceCompliancePolicy |
passcodeBlockSimple |
Boolean |
Indicates whether or not to block simple passcodes. |
passcodeExpirationDays |
Int32 |
Number of days before the passcode expires. Valid values 1 to 65535 |
passcodeMinimumLength |
Int32 |
Minimum length of passcode. Valid values 4 to 14 |
passcodeMinutesOfInactivityBeforeLock |
Int32 |
Minutes of inactivity before a passcode is required. |
passcodePreviousPasscodeBlockCount |
Int32 |
Number of previous passcodes to block. Valid values 1 to 24 |
passcodeMinimumCharacterSetCount |
Int32 |
The number of character sets required in the password. |
passcodeRequiredType |
requiredPasswordType |
The required passcode type. Possible values are: deviceDefault , alphanumeric , numeric . |
passcodeRequired |
Boolean |
Indicates whether or not to require a passcode. |
osMinimumVersion |
String |
Minimum IOS version. |
osMaximumVersion |
String |
Maximum IOS version. |
securityBlockJailbrokenDevices |
Boolean |
Devices must not be jailbroken or rooted. |
deviceThreatProtectionEnabled |
Boolean |
Require that devices have enabled device threat protection . |
deviceThreatProtectionRequiredSecurityLevel |
deviceThreatProtectionLevel |
Require Mobile Threat Protection minimum risk level to report noncompliance. Possible values are: unavailable , secured , low , medium , high , notSet . |
managedEmailProfileRequired |
Boolean |
Indicates whether or not to require a managed email profile. |
Response
If successful, this method returns a 200 OK
response code and an updated iosCompliancePolicy object in the response body.
Example
Request
Here is an example of the request.
PATCH https://graph.microsoft.com/v1.0/deviceManagement/deviceCompliancePolicies/{deviceCompliancePolicyId}
Content-type: application/json
Content-length: 745
{
"@odata.type": "#microsoft.graph.iosCompliancePolicy",
"description": "Description value",
"displayName": "Display Name value",
"version": 7,
"passcodeBlockSimple": true,
"passcodeExpirationDays": 6,
"passcodeMinimumLength": 5,
"passcodeMinutesOfInactivityBeforeLock": 5,
"passcodePreviousPasscodeBlockCount": 2,
"passcodeMinimumCharacterSetCount": 0,
"passcodeRequiredType": "alphanumeric",
"passcodeRequired": true,
"osMinimumVersion": "Os Minimum Version value",
"osMaximumVersion": "Os Maximum Version value",
"securityBlockJailbrokenDevices": true,
"deviceThreatProtectionEnabled": true,
"deviceThreatProtectionRequiredSecurityLevel": "secured",
"managedEmailProfileRequired": true
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new IosCompliancePolicy
{
OdataType = "#microsoft.graph.iosCompliancePolicy",
Description = "Description value",
DisplayName = "Display Name value",
Version = 7,
PasscodeBlockSimple = true,
PasscodeExpirationDays = 6,
PasscodeMinimumLength = 5,
PasscodeMinutesOfInactivityBeforeLock = 5,
PasscodePreviousPasscodeBlockCount = 2,
PasscodeMinimumCharacterSetCount = 0,
PasscodeRequiredType = RequiredPasswordType.Alphanumeric,
PasscodeRequired = true,
OsMinimumVersion = "Os Minimum Version value",
OsMaximumVersion = "Os Maximum Version value",
SecurityBlockJailbrokenDevices = true,
DeviceThreatProtectionEnabled = true,
DeviceThreatProtectionRequiredSecurityLevel = DeviceThreatProtectionLevel.Secured,
ManagedEmailProfileRequired = true,
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.DeviceManagement.DeviceCompliancePolicies["{deviceCompliancePolicy-id}"].PatchAsync(requestBody);
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation.
mgc device-management device-compliance-policies patch --device-compliance-policy-id {deviceCompliancePolicy-id} --body '{\
"@odata.type": "#microsoft.graph.iosCompliancePolicy",\
"description": "Description value",\
"displayName": "Display Name value",\
"version": 7,\
"passcodeBlockSimple": true,\
"passcodeExpirationDays": 6,\
"passcodeMinimumLength": 5,\
"passcodeMinutesOfInactivityBeforeLock": 5,\
"passcodePreviousPasscodeBlockCount": 2,\
"passcodeMinimumCharacterSetCount": 0,\
"passcodeRequiredType": "alphanumeric",\
"passcodeRequired": true,\
"osMinimumVersion": "Os Minimum Version value",\
"osMaximumVersion": "Os Maximum Version value",\
"securityBlockJailbrokenDevices": true,\
"deviceThreatProtectionEnabled": true,\
"deviceThreatProtectionRequiredSecurityLevel": "secured",\
"managedEmailProfileRequired": true\
}\
'
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation.
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewDeviceCompliancePolicy()
description := "Description value"
requestBody.SetDescription(&description)
displayName := "Display Name value"
requestBody.SetDisplayName(&displayName)
version := int32(7)
requestBody.SetVersion(&version)
passcodeBlockSimple := true
requestBody.SetPasscodeBlockSimple(&passcodeBlockSimple)
passcodeExpirationDays := int32(6)
requestBody.SetPasscodeExpirationDays(&passcodeExpirationDays)
passcodeMinimumLength := int32(5)
requestBody.SetPasscodeMinimumLength(&passcodeMinimumLength)
passcodeMinutesOfInactivityBeforeLock := int32(5)
requestBody.SetPasscodeMinutesOfInactivityBeforeLock(&passcodeMinutesOfInactivityBeforeLock)
passcodePreviousPasscodeBlockCount := int32(2)
requestBody.SetPasscodePreviousPasscodeBlockCount(&passcodePreviousPasscodeBlockCount)
passcodeMinimumCharacterSetCount := int32(0)
requestBody.SetPasscodeMinimumCharacterSetCount(&passcodeMinimumCharacterSetCount)
passcodeRequiredType := graphmodels.ALPHANUMERIC_REQUIREDPASSWORDTYPE
requestBody.SetPasscodeRequiredType(&passcodeRequiredType)
passcodeRequired := true
requestBody.SetPasscodeRequired(&passcodeRequired)
osMinimumVersion := "Os Minimum Version value"
requestBody.SetOsMinimumVersion(&osMinimumVersion)
osMaximumVersion := "Os Maximum Version value"
requestBody.SetOsMaximumVersion(&osMaximumVersion)
securityBlockJailbrokenDevices := true
requestBody.SetSecurityBlockJailbrokenDevices(&securityBlockJailbrokenDevices)
deviceThreatProtectionEnabled := true
requestBody.SetDeviceThreatProtectionEnabled(&deviceThreatProtectionEnabled)
deviceThreatProtectionRequiredSecurityLevel := graphmodels.SECURED_DEVICETHREATPROTECTIONLEVEL
requestBody.SetDeviceThreatProtectionRequiredSecurityLevel(&deviceThreatProtectionRequiredSecurityLevel)
managedEmailProfileRequired := true
requestBody.SetManagedEmailProfileRequired(&managedEmailProfileRequired)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
deviceCompliancePolicies, err := graphClient.DeviceManagement().DeviceCompliancePolicies().ByDeviceCompliancePolicyId("deviceCompliancePolicy-id").Patch(context.Background(), requestBody, nil)
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation.
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
IosCompliancePolicy deviceCompliancePolicy = new IosCompliancePolicy();
deviceCompliancePolicy.setOdataType("#microsoft.graph.iosCompliancePolicy");
deviceCompliancePolicy.setDescription("Description value");
deviceCompliancePolicy.setDisplayName("Display Name value");
deviceCompliancePolicy.setVersion(7);
deviceCompliancePolicy.setPasscodeBlockSimple(true);
deviceCompliancePolicy.setPasscodeExpirationDays(6);
deviceCompliancePolicy.setPasscodeMinimumLength(5);
deviceCompliancePolicy.setPasscodeMinutesOfInactivityBeforeLock(5);
deviceCompliancePolicy.setPasscodePreviousPasscodeBlockCount(2);
deviceCompliancePolicy.setPasscodeMinimumCharacterSetCount(0);
deviceCompliancePolicy.setPasscodeRequiredType(RequiredPasswordType.Alphanumeric);
deviceCompliancePolicy.setPasscodeRequired(true);
deviceCompliancePolicy.setOsMinimumVersion("Os Minimum Version value");
deviceCompliancePolicy.setOsMaximumVersion("Os Maximum Version value");
deviceCompliancePolicy.setSecurityBlockJailbrokenDevices(true);
deviceCompliancePolicy.setDeviceThreatProtectionEnabled(true);
deviceCompliancePolicy.setDeviceThreatProtectionRequiredSecurityLevel(DeviceThreatProtectionLevel.Secured);
deviceCompliancePolicy.setManagedEmailProfileRequired(true);
DeviceCompliancePolicy result = graphClient.deviceManagement().deviceCompliancePolicies().byDeviceCompliancePolicyId("{deviceCompliancePolicy-id}").patch(deviceCompliancePolicy);
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation.
const options = {
authProvider,
};
const client = Client.init(options);
const deviceCompliancePolicy = {
'@odata.type': '#microsoft.graph.iosCompliancePolicy',
description: 'Description value',
displayName: 'Display Name value',
version: 7,
passcodeBlockSimple: true,
passcodeExpirationDays: 6,
passcodeMinimumLength: 5,
passcodeMinutesOfInactivityBeforeLock: 5,
passcodePreviousPasscodeBlockCount: 2,
passcodeMinimumCharacterSetCount: 0,
passcodeRequiredType: 'alphanumeric',
passcodeRequired: true,
osMinimumVersion: 'Os Minimum Version value',
osMaximumVersion: 'Os Maximum Version value',
securityBlockJailbrokenDevices: true,
deviceThreatProtectionEnabled: true,
deviceThreatProtectionRequiredSecurityLevel: 'secured',
managedEmailProfileRequired: true
};
await client.api('/deviceManagement/deviceCompliancePolicies/{deviceCompliancePolicyId}')
.update(deviceCompliancePolicy);
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation.
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Models\IosCompliancePolicy;
use Microsoft\Graph\Generated\Models\RequiredPasswordType;
use Microsoft\Graph\Generated\Models\DeviceThreatProtectionLevel;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new IosCompliancePolicy();
$requestBody->setOdataType('#microsoft.graph.iosCompliancePolicy');
$requestBody->setDescription('Description value');
$requestBody->setDisplayName('Display Name value');
$requestBody->setVersion(7);
$requestBody->setPasscodeBlockSimple(true);
$requestBody->setPasscodeExpirationDays(6);
$requestBody->setPasscodeMinimumLength(5);
$requestBody->setPasscodeMinutesOfInactivityBeforeLock(5);
$requestBody->setPasscodePreviousPasscodeBlockCount(2);
$requestBody->setPasscodeMinimumCharacterSetCount(0);
$requestBody->setPasscodeRequiredType(new RequiredPasswordType('alphanumeric'));
$requestBody->setPasscodeRequired(true);
$requestBody->setOsMinimumVersion('Os Minimum Version value');
$requestBody->setOsMaximumVersion('Os Maximum Version value');
$requestBody->setSecurityBlockJailbrokenDevices(true);
$requestBody->setDeviceThreatProtectionEnabled(true);
$requestBody->setDeviceThreatProtectionRequiredSecurityLevel(new DeviceThreatProtectionLevel('secured'));
$requestBody->setManagedEmailProfileRequired(true);
$result = $graphServiceClient->deviceManagement()->deviceCompliancePolicies()->byDeviceCompliancePolicyId('deviceCompliancePolicy-id')->patch($requestBody)->wait();
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation.
Import-Module Microsoft.Graph.DeviceManagement
$params = @{
"@odata.type" = "#microsoft.graph.iosCompliancePolicy"
description = "Description value"
displayName = "Display Name value"
version = 7
passcodeBlockSimple = $true
passcodeExpirationDays =
passcodeMinimumLength =
passcodeMinutesOfInactivityBeforeLock =
passcodePreviousPasscodeBlockCount =
passcodeMinimumCharacterSetCount =
passcodeRequiredType = "alphanumeric"
passcodeRequired = $true
osMinimumVersion = "Os Minimum Version value"
osMaximumVersion = "Os Maximum Version value"
securityBlockJailbrokenDevices = $true
deviceThreatProtectionEnabled = $true
deviceThreatProtectionRequiredSecurityLevel = "secured"
managedEmailProfileRequired = $true
}
Update-MgDeviceManagementDeviceCompliancePolicy -DeviceCompliancePolicyId $deviceCompliancePolicyId -BodyParameter $params
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation.
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.ios_compliance_policy import IosCompliancePolicy
from msgraph.generated.models.required_password_type import RequiredPasswordType
from msgraph.generated.models.device_threat_protection_level import DeviceThreatProtectionLevel
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = IosCompliancePolicy(
odata_type = "#microsoft.graph.iosCompliancePolicy",
description = "Description value",
display_name = "Display Name value",
version = 7,
passcode_block_simple = True,
passcode_expiration_days = 6,
passcode_minimum_length = 5,
passcode_minutes_of_inactivity_before_lock = 5,
passcode_previous_passcode_block_count = 2,
passcode_minimum_character_set_count = 0,
passcode_required_type = RequiredPasswordType.Alphanumeric,
passcode_required = True,
os_minimum_version = "Os Minimum Version value",
os_maximum_version = "Os Maximum Version value",
security_block_jailbroken_devices = True,
device_threat_protection_enabled = True,
device_threat_protection_required_security_level = DeviceThreatProtectionLevel.Secured,
managed_email_profile_required = True,
)
result = await graph_client.device_management.device_compliance_policies.by_device_compliance_policy_id('deviceCompliancePolicy-id').patch(request_body)
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation.
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 200 OK
Content-Type: application/json
Content-Length: 917
{
"@odata.type": "#microsoft.graph.iosCompliancePolicy",
"id": "4f501351-1351-4f50-5113-504f5113504f",
"createdDateTime": "2017-01-01T00:02:43.5775965-08:00",
"description": "Description value",
"lastModifiedDateTime": "2017-01-01T00:00:35.1329464-08:00",
"displayName": "Display Name value",
"version": 7,
"passcodeBlockSimple": true,
"passcodeExpirationDays": 6,
"passcodeMinimumLength": 5,
"passcodeMinutesOfInactivityBeforeLock": 5,
"passcodePreviousPasscodeBlockCount": 2,
"passcodeMinimumCharacterSetCount": 0,
"passcodeRequiredType": "alphanumeric",
"passcodeRequired": true,
"osMinimumVersion": "Os Minimum Version value",
"osMaximumVersion": "Os Maximum Version value",
"securityBlockJailbrokenDevices": true,
"deviceThreatProtectionEnabled": true,
"deviceThreatProtectionRequiredSecurityLevel": "secured",
"managedEmailProfileRequired": true
}