NotificationPolicyController Resource

GET /notification-policies

Return details of all Notification Polices

Request Parameters
name type description
direction query
filter query
nameLike query
orderBy query
page query
size query
Response Body
media type data type description
application/json array of NotificationPolicyDetail (JSON) list of detailed Notification Policies

Example

Request
GET /notification-policies
Content-Type: */*
Accept: application/json

                
...
                
              
Response
HTTP/1.1 200 OK
Content-Type: application/json

                
[ {
  "guid" : "...",
  "name" : "...",
  "active" : true,
  "actions" : [ {
    "actionType" : "PUSH",
    "recipients" : [ {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    }, {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    } ]
  }, {
    "actionType" : "EMAIL",
    "recipients" : [ {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    }, {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    } ]
  } ],
  "conditions" : [ {
    "conditionType" : "TASK_RELATED",
    "conditionName" : "TASK_STATE_CHANGED_TO_RUNNING",
    "taskType" : "UNMOUNT",
    "maxAttempts" : 12345,
    "maxDays" : 12345
  }, {
    "conditionType" : "BACKUP_DESTINATION_RELATED",
    "conditionName" : "NODE_STATE_CHANGED_TO_STOPPED",
    "taskType" : "IMPORT_TAPE",
    "maxAttempts" : 12345,
    "maxDays" : 12345
  } ]
} ]
                
              

POST /notification-policies

Create a new Notification Policy

Request Body
media type data type description
application/json NotificationPolicyRequest (JSON) specify data for new Notification Policy
Response Body
media type data type description
application/json NotificationPolicyDetail (JSON) details of newly created Notification Policy

Example

Request
POST /notification-policies
Content-Type: application/json
Accept: application/json

                
{
  "name" : "...",
  "active" : true,
  "actions" : [ {
    "actionType" : "PUSH",
    "recipients" : [ {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    }, {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    } ]
  }, {
    "actionType" : "SLACK",
    "recipients" : [ {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    }, {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    } ]
  } ],
  "conditions" : [ {
    "conditionType" : "QUOTA_RELATED",
    "conditionName" : "QUOTA_HARD_LIMIT_EXCEEDED",
    "taskType" : "STORE",
    "maxAttempts" : 12345,
    "maxDays" : 12345
  }, {
    "conditionType" : "QUOTA_RELATED",
    "conditionName" : "BACKUP_DESTINATION_NO_SPACE_ON_PHYSICAL_DEVICE_BY_VDO",
    "taskType" : "DELETE",
    "maxAttempts" : 12345,
    "maxDays" : 12345
  } ]
}
                
              
Response
HTTP/1.1 201 Created
Content-Type: application/json

                
{
  "guid" : "...",
  "name" : "...",
  "active" : true,
  "actions" : [ {
    "actionType" : "EMAIL",
    "recipients" : [ {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    }, {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    } ]
  }, {
    "actionType" : "EMAIL",
    "recipients" : [ {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    }, {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    } ]
  } ],
  "conditions" : [ {
    "conditionType" : "NODE_RELATED",
    "conditionName" : "TASK_STATE_CHANGED_TO_QUEUED",
    "taskType" : "IMPORT",
    "maxAttempts" : 12345,
    "maxDays" : 12345
  }, {
    "conditionType" : "SNAPSHOT_RELATED",
    "conditionName" : "TASK_STATE_CHANGED_TO_QUEUED",
    "taskType" : "SNAPSHOT",
    "maxAttempts" : 12345,
    "maxDays" : 12345
  } ]
}
                
              

POST /notification-policies/preview

Request Body
media type data type
application/json NotificationPolicyRequest (JSON)
Response Body
media type data type description
application/json array of NotificationPushPreview (JSON)

Example

Request
POST /notification-policies/preview
Content-Type: application/json
Accept: application/json

                
{
  "name" : "...",
  "active" : true,
  "actions" : [ {
    "actionType" : "PUSH",
    "recipients" : [ {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    }, {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    } ]
  }, {
    "actionType" : "SLACK",
    "recipients" : [ {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    }, {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    } ]
  } ],
  "conditions" : [ {
    "conditionType" : "BACKUP_DESTINATION_RELATED",
    "conditionName" : "TASK_STATE_CHANGED_TO_CANCELLED",
    "taskType" : "INVENTORY_SYNC",
    "maxAttempts" : 12345,
    "maxDays" : 12345
  }, {
    "conditionType" : "SNAPSHOT_RELATED",
    "conditionName" : "TASK_STATE_CHANGED_TO_FINISHED",
    "taskType" : "EJECT_TAPE",
    "maxAttempts" : 12345,
    "maxDays" : 12345
  } ]
}
                
              
Response
HTTP/1.1 201 Created
Content-Type: application/json

                
[ {
  "subject" : "...",
  "messages" : [ "...", "..." ]
} ]
                
              

DELETE /notification-policies/{guid}

Delete Notification Policy

Request Parameters
name type description
guid path specify local unique identifier for Notification Policy

Example

Request
DELETE /notification-policies/{guid}
Content-Type: */*

                
...
                
              
Response
HTTP/1.1 204 No Content

              

GET /notification-policies/{guid}

Return detail of single Notification Policy

Request Parameters
name type description
guid path specify local unique identifier for Notification Policy
Response Body
media type data type description
application/json NotificationPolicyDetail (JSON) detail of single Notification Policy

Example

Request
GET /notification-policies/{guid}
Content-Type: */*
Accept: application/json

                
...
                
              
Response
HTTP/1.1 200 OK
Content-Type: application/json

                
{
  "guid" : "...",
  "name" : "...",
  "active" : true,
  "actions" : [ {
    "actionType" : "PUSH",
    "recipients" : [ {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    }, {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    } ]
  }, {
    "actionType" : "EMAIL",
    "recipients" : [ {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    }, {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    } ]
  } ],
  "conditions" : [ {
    "conditionType" : "TASK_RELATED",
    "conditionName" : "TASK_STATE_CHANGED_TO_CANCELLED",
    "taskType" : "CONNECTIVITY_TEST",
    "maxAttempts" : 12345,
    "maxDays" : 12345
  }, {
    "conditionType" : "TASK_RELATED",
    "conditionName" : "QUOTA_HARD_LIMIT_EXCEEDED",
    "taskType" : "STAGING_CLEANUP",
    "maxAttempts" : 12345,
    "maxDays" : 12345
  } ]
}
                
              

PUT /notification-policies/{guid}

Update an existing Notification Policy

Request Parameters
name type description
guid path specify local unique identifier for Notification Policy
Request Body
media type data type description
application/json NotificationPolicyRequest (JSON) specify data for updating Notification Policy
Response Body
media type data type description
application/json NotificationPolicyDetail (JSON) updated detail of Notification Policy

Example

Request
PUT /notification-policies/{guid}
Content-Type: application/json
Accept: application/json

                
{
  "name" : "...",
  "active" : true,
  "actions" : [ {
    "actionType" : "PUSH",
    "recipients" : [ {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    }, {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    } ]
  }, {
    "actionType" : "SLACK",
    "recipients" : [ {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    }, {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    } ]
  } ],
  "conditions" : [ {
    "conditionType" : "BACKUP_DESTINATION_RELATED",
    "conditionName" : "BACKUP_DESTINATION_NO_SPACE_ON_PHYSICAL_DEVICE_BY_VDO",
    "taskType" : "BACKUP_DESTINATION_INIT",
    "maxAttempts" : 12345,
    "maxDays" : 12345
  }, {
    "conditionType" : "QUOTA_RELATED",
    "conditionName" : "QUOTA_SOFT_LIMIT_EXCEEDED",
    "taskType" : "BACKUP_DESTINATION_SYNC",
    "maxAttempts" : 12345,
    "maxDays" : 12345
  } ]
}
                
              
Response
HTTP/1.1 204 No Content
Content-Type: application/json

                
{
  "guid" : "...",
  "name" : "...",
  "active" : true,
  "actions" : [ {
    "actionType" : "SLACK",
    "recipients" : [ {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    }, {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    } ]
  }, {
    "actionType" : "PUSH",
    "recipients" : [ {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    }, {
      "name" : "...",
      "type" : "ADMIN",
      "notificationPushSettings" : [ { }, { } ]
    } ]
  } ],
  "conditions" : [ {
    "conditionType" : "SNAPSHOT_RELATED",
    "conditionName" : "TASK_STATE_CHANGED_TO_QUEUED",
    "taskType" : "UPLOAD",
    "maxAttempts" : 12345,
    "maxDays" : 12345
  }, {
    "conditionType" : "NODE_RELATED",
    "conditionName" : "TASK_STATE_CHANGED_TO_CANCELLED",
    "taskType" : "BACKUP_DESTINATION_SYNC",
    "maxAttempts" : 12345,
    "maxDays" : 12345
  } ]
}