# Add a new Font payload configuration to an existing profile To create Mac Font policy ## Endpoints **POST** `/api/v1/mdm/profiles/{profile_id}/payloads/macfontpolicy` ## Request URL ``` https://{serverurl}/api/v1/mdm/profiles/{profile_id}/payloads/macfontpolicy ``` ## 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/profiles-create-profile.html) or [Get Profiles](https://www.manageengine.com/mobile-device-management/profiles-get-profile.html) response ### Request Body **Content-Type:** `application/json` **Type:** JSON object #### Attributes - **font_name** (string) — Optional Display name of the font to install on the device - **font_file_id** (long) — Optional File ID of the uploaded font file. Use the fileID from the [File Upload API](https://www.manageengine.com/mobile-device-management/files-upload-file-ems.html) response - **font_id** (long) — Optional Identifier of an existing font entry to associate with this payload ## Sample Request ### Curl ```bash curl --request POST \ --url https://appdomain/api/v1/mdm/profiles/{profile_id}/payloads/macfontpolicy \ --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) { HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://appdomain/api/v1/mdm/profiles/{profile_id}/payloads/macfontpolicy")) .header("content-type", "application/json") .header("Authorization", "Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52") .method("POST", 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("POST", "/api/v1/mdm/profiles/{profile_id}/payloads/macfontpolicy", 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/macfontpolicy" 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/macfontpolicy' -Method POST -Headers $headers -ContentType 'application/json' -Body '{}' ``` ## Sample Request Body Add Font payload to the profile ```json { "font_id": 1, "font_file_id": "value", "font_name": "Zylker User" } ``` ## Response Parameters ### HTTP 200 **Response Body:** `application/json` **Type:** JSON object #### Attributes - **payload_id** (long) Unique identifier for the created payload item - **font_name** (string) Display name of the installed font - **font_file_id** (long) File ID of the uploaded font file - **font_id** (long) Identifier of the associated font entry ## Sample Response: HTTP 200 Font payload successfully added ```json { "payload_id": 9007199254741000, "font_id": 1, "font_file_id": "value", "font_name": "Zylker User" } ``` ## Possible HTTP Status Codes - **200** — HTTP code --- **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.