# Add a new Firmware Password payload configuration to an existing profile To create Mac Firmware password policy ## Endpoints **POST** `/api/v1/mdm/profiles/{profile_id}/payloads/macfirmwarepassword` ## Request URL `https://{server-hostname}:8383/api/v1/mdm/profiles/{profile_id}/payloads/macfirmwarepassword` ## 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` - **firmware_password_type** `integer` **Mandatory**: Firmware password mode. Allowed values: 1=Static Password, 2=Dynamic Password, 3=Turn Off firmware Password - **firmware_new_password** `long` **Mandatory**: Managed password ID for the new firmware/recovery lock password. Create the password first using the [Add Managed Password](https://www.manageengine.com/products/desktop-central/help/api/onpremise/mac-add-managed-password.html) and use the returned managed_password_id - **firmware_old_password** `long` **Optional**: Managed password ID for the current firmware/recovery lock password (required when changing an existing password). Create using the [Add Managed Password](https://www.manageengine.com/products/desktop-central/help/api/onpremise/mac-add-managed-password.html) ## Sample Request ```curl curl --request POST \ --url https://appdomain/api/v1/mdm/profiles/{profile_id}/payloads/macfirmwarepassword \ --header 'Accept: application/json' \ --header 'Authorization: d92d4xxxxxxxxxxxxx15f52' \ --header 'Content-Type: application/json' \ --data '{"firmware_old_password":"********","firmware_password_type":1,"firmware_new_password":"********"}' ``` ## Sample Request Body Add Firmware Password payload to the profile ```json { "firmware_old_password": "********", "firmware_password_type": 1, "firmware_new_password": "********" } ``` ## Response Parameters ### HTTP Code 200 Response Body — `application/json` - `JSON Object` - **payload_id** `long`: Unique identifier for the created payload item - **firmware_password_type** `string`: Firmware password mode. Values: 1=Static Password, 2=Dynamic Password, 3=Turn Off firmware Password - **firmware_new_password** `string`: Managed password ID of the new firmware/recovery lock password that was set ## Possible Response Codes - **200** `HTTP code` ## Sample Response: HTTP 200 Firmware Password payload successfully added ```json { "payload_id": 9007199254741000, "firmware_old_password": "********", "firmware_password_type": 1, "firmware_new_password": "********" } ``` ![](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.