Retention Controller Resource

The API allows you to get backup file versions to remove based on posted remoteversions, retention config for backup destination and retention logic

POST /retention

Returns list of version to remove, based on input params

Request Body
media type data type description
application/json RetentionQueryParameters (JSON) specify remote backup file versions
Response Body
media type data type description
application/json RemoteVersionsObject (JSON) object with versions to remove: map of protectedEntity-> (backupfile-> versions)

Example

Request
POST /retention
Content-Type: application/json
Accept: application/json

                
{
  "remoteVersionsObject" : {
    "versionsMap" : {
      "property1" : { },
      "property2" : { }
    },
    "backupDestination" : "..."
  },
  "backupDestination" : "..."
}
                
              
Response
HTTP/1.1 201 Created
Content-Type: application/json

                
{
  "versionsMap" : {
    "property1" : { },
    "property2" : { }
  },
  "backupDestination" : "..."
}
                
              

POST /retention/mark-backups

Request Body
media type data type
application/json array of BackupRetentionHintRequest (JSON)
Response Body
media type data type description
application/json array of MarkBackupsPreviewResponse (JSON)

Example

Request
POST /retention/mark-backups
Content-Type: application/json
Accept: application/json

                
[ {
  "guid" : "...",
  "retentionHint" : "DONT_TOUCH",
  "archiveExpire" : 12345
} ]
                
              
Response
HTTP/1.1 201 Created
Content-Type: application/json

                
[ {
  "guid" : "...",
  "backup" : {
    "guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
    "name" : "Entity name"
  },
  "snapshotTime" : 12345,
  "backupDestination" : {
    "guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
    "name" : "Entity name"
  },
  "roleType" : "ARCHIVE",
  "status" : "IN_PROGRESS",
  "type" : "SYNCHRONIZATION",
  "previousType" : "INCREMENTAL",
  "statusInfo" : "...",
  "retentionHint" : "ARCHIVE",
  "previousHint" : "RECREATE",
  "archiveExpire" : 12345,
  "previousArchiveExpire" : 12345
} ]
                
              

POST /retention/mark-backups/preview

Request Body
media type data type
application/json array of BackupRetentionHintRequest (JSON)
Response Body
media type data type description
application/json array of MarkBackupsPreviewResponse (JSON)

Example

Request
POST /retention/mark-backups/preview
Content-Type: application/json
Accept: application/json

                
[ {
  "guid" : "...",
  "retentionHint" : "RECREATE",
  "archiveExpire" : 12345
} ]
                
              
Response
HTTP/1.1 201 Created
Content-Type: application/json

                
[ {
  "guid" : "...",
  "backup" : {
    "guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
    "name" : "Entity name"
  },
  "snapshotTime" : 12345,
  "backupDestination" : {
    "guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
    "name" : "Entity name"
  },
  "roleType" : "ARCHIVE",
  "status" : "IN_PROGRESS",
  "type" : "FULL",
  "previousType" : "INCREMENTAL",
  "statusInfo" : "...",
  "retentionHint" : "ARCHIVE",
  "previousHint" : "DONT_TOUCH",
  "archiveExpire" : 12345,
  "previousArchiveExpire" : 12345
} ]