# Add a new Custom Policy payload configuration to an existing profile Create Windows Custom Policy payload. ## Endpoint **POST** `/api/v1/mdm/profiles/{profile_id}/payloads/windowscustompolicy` ## Request URL `https://{server-hostname}:8383/api/v1/mdm/profiles/{profile_id}/payloads/windowscustompolicy` ## Scope `MDMDeviceMgmt.CREATE` ## Header `Authorization: d92d4xxxxxxxxxxxxx15f52` ## Request Parameters ### Request Headers - **Content-Type** `string` — **Mandatory** — `application/json` - **Accept** `string` — **Mandatory** — `application/json` ### Path Parameters - **profile_id** `string` — **Mandatory** Unique identifier of the profile. Obtain from the [Create Profile](https://www.manageengine.com/products/desktop-central/help/api/onpremise/mdm-profiles-create-profile.html) or [Get Profiles](https://www.manageengine.com/products/desktop-central/help/api/onpremise/mdm-profiles-get-profile.html) response. ### Request Body `application/json` - `JSON Object` - **syncml_commands** `JSON Array` — Optional Syncml Commands ## Sample Request ```curl curl --request POST \ --url https://appdomain/api/v1/mdm/profiles/{profile_id}/payloads/windowscustompolicy \ --header 'Accept: application/json' \ --header 'Authorization: d92d4xxxxxxxxxxxxx15f52' \ --header 'Content-Type: application/json' \ --data '{"syncml_commands":[{"data":"MA==","action_type":"1","loc_uri":"./Device/Vendor/MSFT/Policy/Config/Camera/AllowCamera","data_type":"0","name":"Configuration 1","position":1}]}' ``` ## Sample Request Body Add Custom Policy payload to the profile ```json { "syncml_commands": [ { "data": "MA==", "action_type": "1", "loc_uri": "./Device/Vendor/MSFT/Policy/Config/Camera/AllowCamera", "data_type": "0", "name": "Configuration 1", "position": 1 } ] } ``` ## Response Parameters ### HTTP Code 200 Response Body — `application/json` - `JSON Object` - **payload_id** `long` Unique identifier for the created payload item - **syncml_commands** `JSON Array` Syncml Commands - **custom_profile_id** `long` Custom Profile Id ## Possible Response Codes - **200** — HTTP code ## Sample Response: HTTP 200 Custom Policy payload successfully added ```json { "payload_id": "9007199254741295", "syncml_commands": [ { "data": "0", "action_type": "1", "loc_uri": "./Device/Vendor/MSFT/Policy/Config/Camera/AllowCamera", "custom_profile_data_id": "9007199254741070", "data_type": "0", "name": "Configuration 1", "position": "1" } ], "custom_profile_id": "9007199254741071" } ``` ## Rate Limits ![](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.