# Create a new Windows Defender Application Guard profile Create the App Guard Profile for windows ## Endpoint **POST** `/api/v1/mdm/profiles/appguard` ## Request URL `https://{server-hostname}:8383/api/v1/mdm/profiles/appguard` ## Scope `MDMDeviceMgmt.CREATE` ## Header `Authorization: d92d4xxxxxxxxxxxxx15f52` ## Request Parameters ### Request Headers - **Content-Type** `string` **Mandatory**: `application/json` - **Accept** `string` **Mandatory**: `application/json` ### Request Body `application/json` - `JSON Object` - **policy_name** `string` **Mandatory** - Name of the App Guard profile - **policy_desc** `string` Optional - Description for the App Guard profile - **perform_audit** `integer` **Mandatory** - Enable auditing for Application Guard events. 0 - Disabled, 1 - Enabled - **allow_camera_mic** `integer` **Mandatory** - Allow access to camera and microphone inside the Application Guard container. 0 - Blocked, 1 - Allowed - **allow_persistence** `integer` **Mandatory** - Allow data persistence across Application Guard sessions (e.g., favorites, cookies). 0 - Disabled, 1 - Enabled - **allow_gpu** `integer` Optional - Allow GPU-accelerated rendering inside the Application Guard container. 0 - Disabled (default), 1 - Enabled - **allow_app_guard** `integer` **Mandatory** - Enable or disable Windows Defender Application Guard. 0 - Disabled, 1 - Enabled (Enterprise mode), 2 - Enabled (Standalone mode) - **block_non_enterprise** `integer` Optional - Block access to non-enterprise content by enterprise apps. 0 - Not blocked (default), 1 - Blocked - **cert_thumbprints** `array` Optional - List of certificate thumbprint strings to share with the Application Guard container for user authentication - **clipboard_type** `integer` **Mandatory** - Direction of clipboard sharing. 1 - Host to container only, 2 - Container to host only, 3 - Both directions - **clipboard_settings** `integer` **Mandatory** - Type of clipboard content allowed. 1 - Text only, 2 - Image only, 3 - Text and Image - **print_settings** `integer` **Mandatory** - Printing options from the Application Guard container. Bitmask value: 0 - No printing, 1 - Allow XPS, 2 - Allow PDF, 4 - Allow local printers, 8 - Allow network printers. Combine values for multiple options (e.g., 15 - all allowed) - **save_files** `integer` **Mandatory** - Allow users to save downloaded files from the Application Guard container to the host OS. 0 - Blocked, 1 - Allowed - **primary_domain_name** `string` Optional - Primary enterprise domain name to be protected by Application Guard - **other_domain_names** `array` Optional - List of other enterprise domain names to be treated as trusted resources - **protected_domain_names** `array` Optional - List of domain names to be classified as enterprise network resources - **enterprise_ip_range** `array` Optional - List of enterprise IP address ranges (e.g., `192.168.0.0-192.168.255.255`) - **enterprise_cloud_resources** `array` Optional - List of enterprise cloud resource domains (e.g., [www.zylker.com](https://www.zylker.com)) - **neutral_resources** `array` Optional - List of neutral resource domains accessible from both enterprise and personal contexts - **internal_proxy_server** `array` Optional - List of internal proxy server addresses used for enterprise resources - **proxy_server** `array` Optional - List of proxy server addresses ## Sample Request ```curl curl --request POST \ --url https://appdomain/api/v1/mdm/profiles/appguard \ --header 'Accept: application/json' \ --header 'Authorization: d92d4xxxxxxxxxxxxx15f52' \ --header 'Content-Type: application/json' \ --data '{"save_files":0,"enterprise_ip_range":["192.168.0.0-192.168.255.255","10.0.0.0-10.255.255.255"],"print_settings":6,"allow_gpu":1,"block_non_enterprise":1,"proxy_server":["proxy.zylker.com:8080"],"policy_name":"Windows App Guard Policy","allow_app_guard":1,"clipboard_type":1,"other_domain_names":["partner.zylker.com"],"neutral_resources":["www.bing.com"],"clipboard_settings":1,"protected_domain_names":["intranet.zylker.com"],"policy_desc":"Application Guard profile for enterprise Windows devices","enterprise_cloud_resources":["www.zylker.com","cloud.zylker.com"],"allow_persistence":1,"primary_domain_name":"corp.zylker.com","perform_audit":1,"allow_camera_mic":0,"internal_proxy_server":["proxy.internal.zylker.com:8080"],"cert_thumbprints":["4F6B2E1A3C8D7E9F0A1B2C3D4E5F6A7B8C9D0E1F"]}' ``` ## Sample Request Body ### Create App Guard profile with full configuration ```json { "save_files": 0, "enterprise_ip_range": [ "192.168.0.0-192.168.255.255", "10.0.0.0-10.255.255.255" ], "print_settings": 6, "allow_gpu": 1, "block_non_enterprise": 1, "proxy_server": [ "proxy.zylker.com:8080" ], "policy_name": "Windows App Guard Policy", "allow_app_guard": 1, "clipboard_type": 1, "other_domain_names": [ "partner.zylker.com" ], "neutral_resources": [ "www.bing.com" ], "clipboard_settings": 1, "protected_domain_names": [ "intranet.zylker.com" ], "policy_desc": "Application Guard profile for enterprise Windows devices", "enterprise_cloud_resources": [ "www.zylker.com", "cloud.zylker.com" ], "allow_persistence": 1, "primary_domain_name": "corp.zylker.com", "perform_audit": 1, "allow_camera_mic": 0, "internal_proxy_server": [ "proxy.internal.zylker.com:8080" ], "cert_thumbprints": [ "4F6B2E1A3C8D7E9F0A1B2C3D4E5F6A7B8C9D0E1F" ] } ``` ### Create App Guard profile with minimal required fields ```json { "save_files": 0, "enterprise_ip_range": [], "print_settings": 0, "allow_gpu": 0, "block_non_enterprise": 0, "proxy_server": [], "policy_name": "Basic App Guard Policy", "allow_app_guard": 1, "clipboard_type": 1, "other_domain_names": [], "neutral_resources": [], "clipboard_settings": 1, "protected_domain_names": [], "enterprise_cloud_resources": [], "allow_persistence": 0, "primary_domain_name": "", "perform_audit": 0, "allow_camera_mic": 0, "internal_proxy_server": [], "cert_thumbprints": [] } ``` ## Response Parameters ### HTTP code 200 Response Body - `application/json` - `JSON Object` - **policy_id** `string` - Unique ID of the newly created App Guard profile - **policy_name** `string` - Name of the created App Guard profile ## Possible Response Codes - **200** `HTTP code` ## Sample Response: HTTP 200 ### App Guard profile successfully created ```json { "policy_id": "9007199254741295", "policy_name": "Windows App Guard Policy" } ``` ![ ](https://www.zohowebstatic.com/sites/zweb/images/people/ico-help.png) **Duration:** 1 minute | **Threshold:** 30 | **Lock period:** 5 minutes Duration - Time window for the threshold. Threshold - Number of API calls allowed within the specified duration. Lock Period - Wait time before consecutive API requests.