# Notifications
## listNotificationProfiles
This API is used to list all the Notification Profiles created in OpManager.
### HTTP Method
**GET**
### API URL
```
https://localhost:8060/api/json/admin/listNotificationProfiles?apiKey=***************&isGlobal=true&profileFilter=All&deviceName=devicename
```
### Parameters
| Param Name | Description | Data Type | Allowed Values / Regex | Is Mandatory |
|---|---|---|---|---|
| apiKey | API key used to authenticate and access your OpManager server. | String | - | Yes |
| isGlobal | Boolean flag indicating whether to fetch only global profiles.
**true** - Lists only global profiles.
**false** - Lists all device-specific profiles. | Boolean | Allowed values: **true** or **false** | No |
| profileFilter | Specifies the filter used to list profiles based on the action type. | String | Allowed values: **All, Send Email, Send SMS, Run Program, Webhook, Log a Ticket, Chat, Send Trap, Syslog** | No |
| deviceName | Specifies the name of the device to check which global profiles are associated with it.
Can be retrieved using the API: **listDevices**.
If a profile is associated, the `hasAssociated` field in the response will be **true**. | String | - | No |
| groupName | Specifies the name of the device group, if profiles are queried based on a specific group.
Can be retrieved using the API: **listDeviceGroups**. | String | Allowed values: Any valid device group name (supports alphanumeric text and symbols). | No |
| profileAssociationType | Defines the type of association between profiles and devices or groups.
Can be verified from the API response of **listNotificationProfiles**. | String | Allowed values: **MANUAL**, **BY_DEVICE_GROUP**, **BY_INTERFACE_GROUP** | No |
### Sample Response
HTTP Code: 200
```
[ { "profileName": "Play Sound", "hasSubProfiles": false, "profileType": "Run Program", "profileLabel": "Run Program", "profileID": "1", "hasCriteria": false, "isDevice": false, "status": "true"}, { "profileName": "testProfile", "hasSubProfiles": false, "profileType": "Send Email", "profileLabel": "Send Email", "profileID": "301", "isDevice": false, "hasAssociated": true, "status": "true"}]
```
### Error Response
[View common error responses](https://www.manageengine.com/network-monitoring/help/common-json-errors.html)
**Rate limit:** 50 requests per minute. Exceeding this limit will block requests for 5 minutes
## associateNotificationProfiles
This API is used to associate notification profiles to devices.
### HTTP Method
**POST**
### API URL
```
https://localhost:8060/api/json/admin/associateNotificationProfiles?apiKey=***************&deviceName=devicename&profiles=501
```
### Parameters
| Param Name | Description | Data Type | Allowed Values / Regex | Is Mandatory |
|---|---|---|---|---|
| apiKey | API Key to access your OpManager server. | | | Yes |
| deviceName | Name of the device(s) to which the notification profiles should be associated.
Can be retrieved using the API: **listDevices**. | String | Allowed values: Any valid device name as shown in the OpManager UI. | Yes |
| groupName | Specifies the name of the device group, if profiles are queried based on a specific group.
Can be retrieved using the API: **listDeviceGroups**. | String | Allowed values: Any valid device group name (supports alphanumeric text and symbols). | No |
| profiles | Comma-separated list of Profile IDs to be associated.
Can be retrieved from the API: **listNotificationProfiles**. | String | Allowed values: Comma-separated numeric Profile IDs (e.g., 501,502,503). | Yes |
### Sample Response
HTTP Code: 200
```
{ "result":{ "message": "Notification Profile has been associated successfully"}}
```
### Error Response
[View common error responses](https://www.manageengine.com/network-monitoring/help/common-json-errors.html)
**Rate limit:** 50 requests per minute. Exceeding this limit will block requests for 5 minutes
## updateNotificationProfileStatus
This API is used to enable/disable notification profiles. This API will be available from OpManager version `127189`
### HTTP Method
**POST**
### API URL
```
https://localhost:8060/api/json/admin/updateNotificationProfileStatus?apiKey=***************&profileName=testprofile&profileId=301&status=disable
```
### Parameters
| Param Name | Description | Data Type | Allowed Values / Regex | Is Mandatory |
|---|---|---|---|---|
| apiKey | API Key to access your OpManager server. | | | Yes |
| profileName | Name of the notification profile to be enabled or disabled.
Can be retrieved from the API: **listNotificationProfiles**. | String | - | Yes |
| profileId | ID of the notification profile that needs to be enabled or disabled.
Can be retrieved from the API: **listNotificationProfiles**. | Long | - | Yes |
| status | Action to perform on the profile. | String | Allowed values: enable or disable | Yes |
| deviceName | Name of the device if the profile update is intended for a specific device.
Can be retrieved using the API: **listDevices**. | String | - | No |
| isTemplate | Boolean flag indicating if the profile is a template-based configuration. | Boolean | Allowed values: true or false. | No |
### Sample Response
HTTP Code: 200
```
{"message":"Notification Profile(s) enabled successfully"} or{"message":"Notification Profile(s) disabled successfully"}
```
### Error Response
[View common error responses](https://www.manageengine.com/network-monitoring/help/common-json-errors.html)
**Rate limit:** 500requests per minute. Exceeding this limit will block requests for 5 minutes
## getNotificationProfiles
This API is used to list notification profiles specific to the device.
### HTTP Method
**GET**
### API URL
```
https://localhost:8060/api/json/device/getNotificationProfiles?apiKey=***************&name=devicename
```
### Parameters
| Param Name | Description | Data Type | Allowed Values / Regex | Is Mandatory |
|---|---|---|---|---|
| apiKey | API Key to access your OpManager server. | | | Yes |
| name | Name of the device for which the notification profiles need to be listed.
Can be retrieved using the API: **listDevices**. | String | Allowed values: Any valid device name as shown in the OpManager UI. | Yes |
| groupName | Specifies the name of the device group, if profiles are queried based on a specific group.
Can be retrieved using the API: **listDeviceGroups**. | String | Allowed values: Any valid device group name (supports alphanumeric text and symbols). | No |
### Sample Response
HTTP Code: 200
```
[ { "profileName": "Default Notification Profile", "actionDisplayName": "Send Email", "profileLabel": "Send Email", "criteriaId": "301", "profileId": "601", "isGlobal": true, "actionName": "Send Email", "status": "true"}]
```
### Error Response
[View common error responses](https://www.manageengine.com/network-monitoring/help/common-json-errors.html)
**Rate limit:** 500 requests per minute. Exceeding this limit will block requests for 5 minutes