# Update an existing announcement Update the individual Announcement details. ## Endpoints `PUT /api/v1/mdm/announcements/{announcement_id}` ## Request URL `https://{server-hostname}:8383/api/v1/mdm/announcements/{announcement_id}` ## Scope `MDMDeviceMgmt.UPDATE` ## Header `Authorization: d92d4xxxxxxxxxxxxx15f52` ## Request Parameters ### Request Headers - **Content-Type** `string` **Mandatory**: `application/json` - **Accept** `string` **Mandatory**: `application/json` ### Path Parameters - **announcement_id** `string` **Mandatory**: Unique identifier of the announcement. Obtain from the [Create Announcement](https://www.manageengine.com/products/desktop-central/help/api/onpremise/announcements-create-announcement.html) or [Get Announcements](https://www.manageengine.com/products/desktop-central/help/api/onpremise/announcements-get-announcements.html) response. ### Request Body `application/json` - **announcement_name** `string` **Mandatory**: Name/title of the announcement. Must be unique within the customer. - **announcement_format** `integer` Optional: Display format for the announcement (e.g., 1). - **announcement_detail** `JSON Object` Optional: Nested object containing message details including title, content, icon, and acknowledgement settings. - **title** `string` **Mandatory**: Title of the announcement displayed on the device. - **title_color** `string` Optional: Hex color code for the title (e.g., #ffffff). - **nbar_icon** `string` Optional: Path to the notification bar icon image (e.g., `/images/announcement/nbaricon/info.png`). - **nbar_message** `string` Optional: Short message shown in the device notification bar. - **detail_message** `string` **Mandatory**: Full HTML message content displayed in the app. - **needs_acknowledgement** `boolean` Optional: Whether the device user must acknowledge the announcement. - **ack_button** `string` Optional: Button text for acknowledgement (e.g., Got It). Required when `needs_acknowledgement` is true. ## Sample Request ```curl curl --request PUT \ --url https://appdomain/api/v1/mdm/announcements/{announcement_id} \ --header 'Accept: application/json' \ --header 'Authorization: d92d4xxxxxxxxxxxxx15f52' \ --header 'Content-Type: application/json' \ --data '{"announcement_name":"Updated Test Announcement","announcement_format":1,"announcement_detail":{"ack_button":"Got It","nbar_message":"Updated notification","title_color":"#ffffff","nbar_icon":"/images/announcement/nbaricon/info.png","needs_acknowledgement":true,"detail_message":"
Updated announcement content
","title":"Updated Test Announcement"}}' ``` ## Sample Request Body Update announcement content. Full replacement — all required fields must be provided. Updated content is auto-redistributed. ```json { "announcement_name": "Updated Test Announcement", "announcement_format": 1, "announcement_detail": { "ack_button": "Got It", "nbar_message": "Updated notification", "title_color": "#ffffff", "nbar_icon": "/images/announcement/nbaricon/info.png", "needs_acknowledgement": true, "detail_message": "Updated announcement content
", "title": "Updated Test Announcement" } } ``` ## Possible Response Codes - **204** HTTP code ## Sample Response: HTTP 204 ```text 204 No Content ``` ## API Rate Limits **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.