Update iosCompliancePolicy
Article
11/30/2023
11 contributors
Feedback
In this article
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 .
// THE CLI IS IN PREVIEW. NON-PRODUCTION USE ONLY
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 .
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
graphClient := msgraphsdk.NewGraphServiceClientWithCredentials(cred, scopes)
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)
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;
$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 .
from msgraph import GraphServiceClient
from msgraph.generated.models.ios_compliance_policy import IosCompliancePolicy
graph_client = GraphServiceClient(credentials, scopes)
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
}