Storage Snapshot Management Rule Controller Resource

The API allows you to list, view, create and edit snapshot management rules for storages.

GET /rules/storage-snapshot

Returns list of snapshot management rules.

Request Parameters
name type description
direction query
filter query
nameLike query
orderBy query
page query
policy query
size query
Response Body
media type data type description
application/json array of SnapshotMgmtRuleDetails (JSON) list of snapshot management rules

Example

Request
GET /rules/storage-snapshot
Content-Type: */*
Accept: application/json

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

                
[ {
  "guid" : "...",
  "name" : "...",
  "retentionVersions" : 12345,
  "policy" : {
    "guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
    "name" : "Entity name"
  },
  "schedules" : [ {
    "guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
    "name" : "Entity name"
  }, {
    "guid" : "...",
    "name" : "..."
  } ],
  "retentionDays" : 12345,
  "vmCount" : 12345,
  "schedulesCount" : 12345,
  "position" : 12345,
  "active" : true,
  "removable" : true,
  "daysToKeepRetentionLock" : 12345
} ]
                
              

POST /rules/storage-snapshot

Create snapshot management rule.

Request Body
media type data type description
application/json SnapshotMgmtRuleRequest (JSON) specify details for new snapshot management rule
Response Body
media type data type description
application/json SnapshotMgmtRuleDetails (JSON) details of newly created snapshot management rule

Example

Request
POST /rules/storage-snapshot
Content-Type: application/json
Accept: application/json

                
{
  "retentionVersions" : 12345,
  "guid" : "...",
  "name" : "...",
  "retentionDays" : 12345,
  "schedules" : [ {
    "guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
    "name" : "Entity name"
  }, {
    "guid" : "...",
    "name" : "..."
  } ],
  "active" : true,
  "policy" : {
    "guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
    "name" : "Entity name"
  },
  "position" : 12345
}
                
              
Response
HTTP/1.1 201 Created
Content-Type: application/json

                
{
  "guid" : "...",
  "name" : "...",
  "retentionVersions" : 12345,
  "policy" : {
    "guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
    "name" : "Entity name"
  },
  "schedules" : [ {
    "guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
    "name" : "Entity name"
  }, {
    "guid" : "...",
    "name" : "..."
  } ],
  "retentionDays" : 12345,
  "vmCount" : 12345,
  "schedulesCount" : 12345,
  "position" : 12345,
  "active" : true,
  "removable" : true,
  "daysToKeepRetentionLock" : 12345
}
                
              

DELETE /rules/storage-snapshot/{guid}

Remove snapshot management rule.

Request Parameters
name type description
guid path specify local unique identifier for snapshot management rule (use by vProtect)

Example

Request
DELETE /rules/storage-snapshot/{guid}
Content-Type: */*

                
...
                
              
Response
HTTP/1.1 204 No Content

              

GET /rules/storage-snapshot/{guid}

Get a single snapshot management rule.

Request Parameters
name type description
guid path specify local unique identifier for snapshot management rule (use by vProtect)
Response Body
media type data type description
application/json SnapshotMgmtRuleDetails (JSON) a single snapshot management rule details

Example

Request
GET /rules/storage-snapshot/{guid}
Content-Type: */*
Accept: application/json

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

                
{
  "guid" : "...",
  "name" : "...",
  "retentionVersions" : 12345,
  "policy" : {
    "guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
    "name" : "Entity name"
  },
  "schedules" : [ {
    "guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
    "name" : "Entity name"
  }, {
    "guid" : "...",
    "name" : "..."
  } ],
  "retentionDays" : 12345,
  "vmCount" : 12345,
  "schedulesCount" : 12345,
  "position" : 12345,
  "active" : true,
  "removable" : true,
  "daysToKeepRetentionLock" : 12345
}
                
              

PUT /rules/storage-snapshot/{guid}

Change snapshot management rule details.

Request Parameters
name type description
guid path specify local unique identifier for snapshot management rule (use by vProtect)
Request Body
media type data type description
application/json SnapshotMgmtRuleRequest (JSON) specify snapshot management rule details to update
Response Body
media type data type description
application/json SnapshotMgmtRuleDetails (JSON) updated details of snapshot management rule

Example

Request
PUT /rules/storage-snapshot/{guid}
Content-Type: application/json
Accept: application/json

                
{
  "retentionVersions" : 12345,
  "guid" : "...",
  "name" : "...",
  "retentionDays" : 12345,
  "schedules" : [ {
    "guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
    "name" : "Entity name"
  }, {
    "guid" : "...",
    "name" : "..."
  } ],
  "active" : true,
  "policy" : {
    "guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
    "name" : "Entity name"
  },
  "position" : 12345
}
                
              
Response
HTTP/1.1 204 No Content
Content-Type: application/json

                
{
  "guid" : "...",
  "name" : "...",
  "retentionVersions" : 12345,
  "policy" : {
    "guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
    "name" : "Entity name"
  },
  "schedules" : [ {
    "guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
    "name" : "Entity name"
  }, {
    "guid" : "...",
    "name" : "..."
  } ],
  "retentionDays" : 12345,
  "vmCount" : 12345,
  "schedulesCount" : 12345,
  "position" : 12345,
  "active" : true,
  "removable" : true,
  "daysToKeepRetentionLock" : 12345
}