# Modify the configuration of a Web Content Filter payload item within a profile To modify Web Content Filter policy payload item ## Endpoints **PUT** `/api/v1/mdm/profiles/{profile_id}/payloads/webcontentfilterpolicy/payloaditems/{payload_id}` ## Request URL ``` https://{serverurl}/api/v1/mdm/profiles/{profile_id}/payloads/webcontentfilterpolicy/payloaditems/{payload_id} ``` ## Scope ``` MDMOnDemand.MDMDeviceMgmt.UPDATE ``` ## Header ``` Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52 ``` ## Request Parameters ### Path Parameters - **profile_id** (string, Mandatory) Unique identifier of the profile. Obtain from the [Create Profile](https://www.manageengine.com/mobile-device-management/help/api/cloud/profiles-create-profile.html) or [Get Profiles](https://www.manageengine.com/mobile-device-management/help/api/cloud/profiles-get-profile.html) response. - **payload_id** (string, Mandatory) Unique identifier of the payload item. Obtain from the [Get Payload Item IDs](https://www.manageengine.com/mobile-device-management/help/api/cloud/ios-get-web-content-filter-payload-ios.html) response. ### Query Parameters - **t** (long, Optional) - **ignoreHeader** (boolean, Optional) - **qlt** (long, Optional) - **previousTab** (string, Optional) - **service** (string, Optional) - **search** (string, Optional) Free-text search string applied to the default searchable fields of the resource - **all** (boolean, Optional) - **dc_customerid** (long, Optional) - **mdm_instance** (string, Optional) - **signupsrc** (string, Optional) - **zaaid** (string, Optional) - **command** (string, Optional) - **orderby** (string, Optional) - **sortorder** (string, Optional) - **select_all** (boolean, Optional) When true, applies the operation to every record matching the current filter rather than to specific IDs. Default: false - **zoho-internal** (boolean, Optional) - **dc_instance** (string, Optional) - **SUBREQUEST** (string, Optional) - **source** (string, Optional) - **nocache** (long, Optional) param to avoid being served from cache - **wms_csrparam** (string, Optional) CSRF Token ### Request Body **Content-Type:** `application/json` **Type:** JSON object #### Attributes - **enable_auto_filter** (boolean, Optional) Enable Auto Filter. Default: true - **malicious_content_filter** (boolean, Optional) Malicious Content Filter. Default: true - **url_filter_type** (boolean, Optional) Url Filter Type. `true` - Allowlist filter, `false` - Blocklist filter. - **create_bookmarks** (boolean, Optional) Create Bookmarks. Default: false - **filter_browser** (boolean, Optional) Filter Browser. Default: true - **filter_type** (integer, Optional) Web content filter type. Allowed values: - `1` = Built-in Filter - `2` = Plugin - **filter_socket** (boolean, Optional) Filter Socket. Default: false - **organization** (string, Optional) Organization - **payload_certificate_uuid** (string, Optional) Payload Certificate Uuid - **certificate_id** (long, Optional) Certificate ID obtained from the [Certificates API](https://www.manageengine.com/mobile-device-management/help/api/cloud/certificates-get-certificates.html) - **plugin_bundle_id** (string, Optional) Plugin Bundle Id - **server_address** (string, Optional) Server Address - **password** (string, Optional) Password (sensitive - write-only) - **password_id** (long, Optional) Password Id - **user_def_name** (string, Optional) User Def Name - **user_name** (string, Optional) User Name - **permitted_urls** (array, Optional) List of URL strings that can be accessed even if restricted by the blocklist auto-filter - **custom_data** (JSON array, Optional) List of custom key-value pairs for the web content filter plugin Each item: - **custom_key** (string, Optional) — Custom configuration key name - **custom_value** (string, Optional) — Custom configuration key value - **upload_type** (integer, Optional) Upload Type. Default: 1 - **url_details** (JSON array, Optional) List of URL bookmarks for the web content filter. Allowlist / Blocklist URLs. Each item: - **bookmark_path** (string, Optional) — Folder path for the bookmark - **url** (string, Optional) — URL of the bookmark - **bookmark_title** (string, Optional) — Display title of the bookmark ## Sample Request ### Curl ```bash curl --request PUT \ --url https://appdomain/api/v1/mdm/profiles/{profile_id}/payloads/webcontentfilterpolicy/payloaditems/{payload_id} \ --header 'Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52' \ --header 'content-type: application/json' \ --data '{}' ``` ### Java ```java import java.net.URI; import java.net.http.HttpClient; import java.net.http.HttpRequest; import java.net.http.HttpResponse; import java.io.IOException; import java.net.http.HttpTimeoutException; public class Main { public static void main(String[] args) throws IOException, InterruptedException { HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://appdomain/api/v1/mdm/profiles/{profile_id}/payloads/webcontentfilterpolicy/payloaditems/{payload_id}")) .header("content-type", "application/json") .header("Authorization", "Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52") .method("PUT", HttpRequest.BodyPublishers.ofString("{}")) .build(); HttpResponse response = HttpClient.newHttpClient() .send(request, HttpResponse.BodyHandlers.ofString()); System.out.println(response.body()); } } ``` ### Python ```python import http.client conn = http.client.HTTPSConnection("appdomain") payload = "{}" headers = { 'content-type': "application/json", 'Authorization': "Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52" } conn.request( "PUT", "/api/v1/mdm/profiles/{profile_id}/payloads/webcontentfilterpolicy/payloaditems/{payload_id}", payload, headers ) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ### Deluge ```javascript headersMap = Map(); headersMap.put("Content-Type", "application/json"); headersMap.put("Accept", "application/json"); data = Map(); response = invokeUrl [ url: "https://appDomain/api/v1/mdm/profiles/{profile_id}/payloads/webcontentfilterpolicy/payloaditems/{payload_id}" type: PUT headers: headersMap body: data connection: connection_name ] info response; ``` ### PowerShell ```powershell $headers=@{} $headers.Add("content-type", "application/json") $headers.Add("Authorization", "Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52") $response = Invoke-WebRequest ` -Uri 'https://appdomain/api/v1/mdm/profiles/{profile_id}/payloads/webcontentfilterpolicy/payloaditems/{payload_id}' ` -Method PUT ` -Headers $headers ` -ContentType 'application/json' ` -Body '{}' ``` ## Sample Request Body ```json { "certificate_id": 1, "create_bookmarks": false, "filter_browser": true, "payload_certificate_uuid": "value", "url_filter_type": true, "filter_type": 1, "organization": "value", "enable_auto_filter": true, "filter_socket": false, "malicious_content_filter": true } ``` ## Response Parameters ### HTTP 200 **Response Body:** `application/json` **Type:** JSON object #### Attributes - **payload_id** (long) Unique identifier of the payload item - **enable_auto_filter** (boolean) Enable Auto Filter. Default: true - **malicious_content_filter** (boolean) Malicious Content Filter. Default: true - **url_filter_type** (boolean) Url Filter Type. `true` - Allowlist filter, `false` - Blocklist filter. - **create_bookmarks** (boolean) Create Bookmarks. Default: false - **filter_browser** (boolean) Filter Browser. Default: true - **filter_type** (integer) Web content filter type. Allowed values: - `1` = Built-in Filter - `2` = Plugin - **filter_socket** (boolean) Filter Socket. Default: false - **organization** (string) Organization - **payload_certificate_uuid** (string) Payload Certificate Uuid - **certificate_id** (long) Certificate ID obtained from the [Certificates API](https://www.manageengine.com/mobile-device-management/help/api/cloud/certificates-get-certificates.html) - **plugin_bundle_id** (string) Plugin Bundle Id - **server_address** (string) Server Address - **password** (string) Password (sensitive - write-only) - **password_id** (long) Password Id - **user_def_name** (string) User Def Name - **user_name** (string) User Name - **permitted_urls** (array) List of URL strings that can be accessed even if restricted by the blocklist auto-filter - **custom_data** (JSON array) List of custom key-value pairs for the web content filter plugin Each item: - **custom_key** (string) — Custom configuration key name - **custom_value** (string) — Custom configuration key value - **upload_type** (integer) Upload Type. Default: 1 - **url_details** (JSON array) List of URL bookmarks for the web content filter. Allowlist / Blocklist URLs. Each item: - **bookmark_path** (string) — Folder path for the bookmark - **url** (string) — URL of the bookmark - **bookmark_title** (string) — Display title of the bookmark ## Sample Response: HTTP 200 ```json { "certificate_id": 1, "create_bookmarks": false, "filter_browser": true, "payload_certificate_uuid": "value", "payload_id": 9007199254741000, "url_filter_type": true, "filter_type": 1, "organization": "value", "enable_auto_filter": true, "filter_socket": false, "malicious_content_filter": true } ``` ## Possible Response Codes - **200** — HTTP code ## Rate Limit **Duration:** 1 minute **Threshold:** 60 **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.