Create macOSVpnConfiguration
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 macOSVpnConfiguration 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 macOSVpnConfiguration object.
The following table shows the properties that are required when you create the macOSVpnConfiguration.
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 |
connectionName | String | Connection name displayed to the user. Inherited from appleVpnConfiguration |
connectionType | appleVpnConnectionType | Connection type. Inherited from appleVpnConfiguration. Possible values are: ciscoAnyConnect , pulseSecure , f5EdgeClient , dellSonicWallMobileConnect , checkPointCapsuleVpn , customVpn , ciscoIPSec , citrix , ciscoAnyConnectV2 , paloAltoGlobalProtect , zscalerPrivateAccess , f5Access2018 , citrixSso , paloAltoGlobalProtectV2 , ikEv2 , alwaysOn , microsoftTunnel , netMotionMobility , microsoftProtect . |
loginGroupOrDomain | String | Login group or domain when connection type is set to Dell SonicWALL Mobile Connection. Inherited from appleVpnConfiguration |
role | String | Role when connection type is set to Pulse Secure. Inherited from appleVpnConfiguration |
realm | String | Realm when connection type is set to Pulse Secure. Inherited from appleVpnConfiguration |
server | vpnServer | VPN Server on the network. Make sure end users can access this network location. Inherited from appleVpnConfiguration |
identifier | String | Identifier provided by VPN vendor when connection type is set to Custom VPN. For example: Cisco AnyConnect uses an identifier of the form com.cisco.anyconnect.applevpn.plugin Inherited from appleVpnConfiguration |
customData | keyValue collection | Custom data when connection type is set to Custom VPN. Use this field to enable functionality not supported by Intune, but available in your VPN solution. Contact your VPN vendor to learn how to add these key/value pairs. This collection can contain a maximum of 25 elements. Inherited from appleVpnConfiguration |
customKeyValueData | keyValuePair collection | Custom data when connection type is set to Custom VPN. Use this field to enable functionality not supported by Intune, but available in your VPN solution. Contact your VPN vendor to learn how to add these key/value pairs. This collection can contain a maximum of 25 elements. Inherited from appleVpnConfiguration |
enableSplitTunneling | Boolean | Send all network traffic through VPN. Inherited from appleVpnConfiguration |
authenticationMethod | vpnAuthenticationMethod | Authentication method for this VPN connection. Inherited from appleVpnConfiguration. Possible values are: certificate , usernameAndPassword , sharedSecret , derivedCredential , azureAD . |
enablePerApp | Boolean | Setting this to true creates Per-App VPN payload which can later be associated with Apps that can trigger this VPN conneciton on the end user's iOS device. Inherited from appleVpnConfiguration |
safariDomains | String collection | Safari domains when this VPN per App setting is enabled. In addition to the apps associated with this VPN, Safari domains specified here will also be able to trigger this VPN connection. Inherited from appleVpnConfiguration |
onDemandRules | vpnOnDemandRule collection | On-Demand Rules. This collection can contain a maximum of 500 elements. Inherited from appleVpnConfiguration |
providerType | vpnProviderType | Provider type for per-app VPN. Inherited from appleVpnConfiguration. Possible values are: notConfigured , appProxy , packetTunnel . |
associatedDomains | String collection | Associated Domains Inherited from appleVpnConfiguration |
excludedDomains | String collection | Domains that are accessed through the public internet instead of through VPN, even when per-app VPN is activated Inherited from appleVpnConfiguration |
disableOnDemandUserOverride | Boolean | Toggle to prevent user from disabling automatic VPN in the Settings app Inherited from appleVpnConfiguration |
disconnectOnIdle | Boolean | Whether to disconnect after on-demand connection idles Inherited from appleVpnConfiguration |
disconnectOnIdleTimerInSeconds | Int32 | The length of time in seconds to wait before disconnecting an on-demand connection. Valid values 0 to 65535 Inherited from appleVpnConfiguration |
proxyServer | vpnProxyServer | Proxy Server. Inherited from appleVpnConfiguration |
optInToDeviceIdSharing | Boolean | Opt-In to sharing the device's Id to third-party vpn clients for use during network access control validation. Inherited from appleVpnConfiguration |
deploymentChannel | appleDeploymentChannel | Indicates the deployment channel type used to deploy the configuration profile. Possible values are deviceChannel, userChannel. Possible values are: deviceChannel , userChannel , unknownFutureValue . |
Response
If successful, this method returns a 201 Created
response code and a macOSVpnConfiguration 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: 3061
{
"@odata.type": "#microsoft.graph.macOSVpnConfiguration",
"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,
"connectionName": "Connection Name value",
"connectionType": "pulseSecure",
"loginGroupOrDomain": "Login Group Or Domain value",
"role": "Role value",
"realm": "Realm value",
"server": {
"@odata.type": "microsoft.graph.vpnServer",
"description": "Description value",
"address": "Address value",
"isDefaultServer": true
},
"identifier": "Identifier value",
"customData": [
{
"@odata.type": "microsoft.graph.keyValue",
"key": "Key value",
"value": "Value value"
}
],
"customKeyValueData": [
{
"@odata.type": "microsoft.graph.keyValuePair",
"name": "Name value",
"value": "Value value"
}
],
"enableSplitTunneling": true,
"authenticationMethod": "usernameAndPassword",
"enablePerApp": true,
"safariDomains": [
"Safari Domains value"
],
"onDemandRules": [
{
"@odata.type": "microsoft.graph.vpnOnDemandRule",
"ssids": [
"Ssids value"
],
"dnsSearchDomains": [
"Dns Search Domains value"
],
"probeUrl": "https://example.com/probeUrl/",
"action": "evaluateConnection",
"domainAction": "neverConnect",
"domains": [
"Domains value"
],
"probeRequiredUrl": "https://example.com/probeRequiredUrl/",
"interfaceTypeMatch": "ethernet",
"dnsServerAddressMatch": [
"Dns Server Address Match value"
]
}
],
"providerType": "appProxy",
"associatedDomains": [
"Associated Domains value"
],
"excludedDomains": [
"Excluded Domains value"
],
"disableOnDemandUserOverride": true,
"disconnectOnIdle": true,
"disconnectOnIdleTimerInSeconds": 14,
"proxyServer": {
"@odata.type": "microsoft.graph.vpnProxyServer",
"automaticConfigurationScriptUrl": "https://example.com/automaticConfigurationScriptUrl/",
"address": "Address value",
"port": 4
},
"optInToDeviceIdSharing": true,
"deploymentChannel": "userChannel"
}
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: 3233
{
"@odata.type": "#microsoft.graph.macOSVpnConfiguration",
"id": "8ce00178-0178-8ce0-7801-e08c7801e08c",
"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,
"connectionName": "Connection Name value",
"connectionType": "pulseSecure",
"loginGroupOrDomain": "Login Group Or Domain value",
"role": "Role value",
"realm": "Realm value",
"server": {
"@odata.type": "microsoft.graph.vpnServer",
"description": "Description value",
"address": "Address value",
"isDefaultServer": true
},
"identifier": "Identifier value",
"customData": [
{
"@odata.type": "microsoft.graph.keyValue",
"key": "Key value",
"value": "Value value"
}
],
"customKeyValueData": [
{
"@odata.type": "microsoft.graph.keyValuePair",
"name": "Name value",
"value": "Value value"
}
],
"enableSplitTunneling": true,
"authenticationMethod": "usernameAndPassword",
"enablePerApp": true,
"safariDomains": [
"Safari Domains value"
],
"onDemandRules": [
{
"@odata.type": "microsoft.graph.vpnOnDemandRule",
"ssids": [
"Ssids value"
],
"dnsSearchDomains": [
"Dns Search Domains value"
],
"probeUrl": "https://example.com/probeUrl/",
"action": "evaluateConnection",
"domainAction": "neverConnect",
"domains": [
"Domains value"
],
"probeRequiredUrl": "https://example.com/probeRequiredUrl/",
"interfaceTypeMatch": "ethernet",
"dnsServerAddressMatch": [
"Dns Server Address Match value"
]
}
],
"providerType": "appProxy",
"associatedDomains": [
"Associated Domains value"
],
"excludedDomains": [
"Excluded Domains value"
],
"disableOnDemandUserOverride": true,
"disconnectOnIdle": true,
"disconnectOnIdleTimerInSeconds": 14,
"proxyServer": {
"@odata.type": "microsoft.graph.vpnProxyServer",
"automaticConfigurationScriptUrl": "https://example.com/automaticConfigurationScriptUrl/",
"address": "Address value",
"port": 4
},
"optInToDeviceIdSharing": true,
"deploymentChannel": "userChannel"
}