# Add a new HTTP Proxy payload configuration to an existing profile Create Android HTTP Proxy configurations payload ## Endpoints **POST** `/api/v1/mdm/profiles/{profile_id}/payloads/androidhttpproxypolicy` ## Request URL ``` https://{serverurl}/api/v1/mdm/profiles/{profile_id}/payloads/androidhttpproxypolicy ``` ## Scope ``` MDMOnDemand.MDMDeviceMgmt.CREATE ``` ## 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 ### 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 `application/json` JSON object: - **proxy_type** (integer) — Optional Proxy type. 1 = Manual proxy configuration, 2 = PAC file. Default: 1 - **proxy_server** (string) — Mandatory Hostname or IP address of the proxy server (required) - **proxy_server_port** (integer) — Optional Port number for the proxy server connection. Default: 0 - **proxy_user_name** (string) — Optional Username for proxy authentication - **proxy_password** (string) — Optional Password for proxy authentication (write-only; use proxy_password_id for credential ID reads) - **proxy_password_id** (long) — Optional ID of the saved password credential for proxy authentication - **proxy_pac_url** (string) — Optional URL of the proxy auto-config (PAC) file (used when proxy_type=2) - **bypass_proxy_url** (string) — Optional Semicolon-separated list of hostnames or IP addresses that bypass the proxy ## Sample Request ### Curl ```bash curl --request POST \ --url https://appdomain/api/v1/mdm/profiles/{profile_id}/payloads/androidhttpproxypolicy \ --header 'Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52' \ --header 'content-type: application/json' \ --data '{"proxy_server":"value"}' ``` ### 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) { HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://appdomain/api/v1/mdm/profiles/{profile_id}/payloads/androidhttpproxypolicy")) .header("content-type", "application/json") .header("Authorization", "Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52") .method("POST", HttpRequest.BodyPublishers.ofString("{\"proxy_server\":\"value\"}")) .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 = "{\"proxy_server\":\"value\"}" headers = { 'content-type': "application/json", 'Authorization': "Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52" } conn.request("POST", "/api/v1/mdm/profiles/{profile_id}/payloads/androidhttpproxypolicy", 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(); data.put("proxy_server","value"); response = invokeUrl [ url: "https://appDomain/api/v1/mdm/profiles/{profile_id}/payloads/androidhttpproxypolicy" type: POST 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/androidhttpproxypolicy' -Method POST -Headers $headers -ContentType 'application/json' -Body '{"proxy_server":"value"}' ``` ## Sample Request Body Add HTTP Proxy payload to the profile ```json { "proxy_user_name": "Zylker User", "proxy_server": "value", "proxy_password_id": 1, "proxy_password": "********", "proxy_pac_url": "https://zylker.com", "proxy_server_port": 0, "bypass_proxy_url": "https://zylker.com", "proxy_type": 1 } ``` ## Response Parameters ### HTTP 200 Response Body — `application/json` JSON object: - **payload_id** (long) Unique identifier for the created payload item - **proxy_type** (integer) Proxy type. 1 = Manual proxy configuration, 2 = PAC file. Default: 1 - **proxy_server** (string) Hostname or IP address of the proxy server - **proxy_server_port** (integer) Port number for the proxy server connection. Default: 0 - **proxy_user_name** (string) Username for proxy authentication - **proxy_password** (string) Password for proxy authentication (write-only; use proxy_password_id for credential ID reads) - **proxy_password_id** (long) ID of the saved password credential for proxy authentication - **proxy_pac_url** (string) URL of the proxy auto-config (PAC) file (used when proxy_type=2) - **bypass_proxy_url** (string) Semicolon-separated list of hostnames or IP addresses that bypass the proxy ## Sample Response: HTTP 200 HTTP Proxy payload successfully added ```json { "payload_id": 9007199254741000, "proxy_user_name": "Zylker User", "proxy_server": "value", "proxy_password_id": 1, "proxy_password": "********", "proxy_pac_url": "https://zylker.com", "proxy_server_port": 0, "bypass_proxy_url": "https://zylker.com", "proxy_type": 1 } ``` ## Possible Response Codes - **200** — HTTP code ## Rate Limiting **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.