# Backup Files Controller Resource

The API allows you to create, list, view and edit backup files.

### GET /backup-files

Returns list of backup files filtered by specified query parameters.

Request Parameters
name | type | description | constraints
--- | --- | --- | ---
backup | query |  |
backup-destination | query |  |
direction | query |  |
fail-on-non-successful | query |  | boolean
filter | query |  |
nameLike | query |  |
orderBy | query |  |
page | query |  |
path | query |  |
project-uuid | query |  |
protected-entity | query |  |
root-backup | query |  |
root-backup-file | query |  |
size | query |  |
type | query |  | "APP_IMAGE" or "CBT" or "CLOUD_DATABASE" or "DISK" or "DISK_INC" or "DISK_META" or "OS_FILE" or "SQLITE_DATABASE" or "STORAGE_META" or "UNRECOGNIZED" or "VM_DISK_META" or "VM_IMAGE" or "VM_META" or "VM_META_ZIP"
virtual-machine-disk | query |  |
with-modified-configs | query |  | required boolean

Response Body
media type | data type | description
--- | --- | ---
application/json | array of BackupFileListRecord (JSON) | list of backup files filtered by specified query parameters

#### Example

##### Request

    GET /backup-files
    Content-Type: */*
    Accept: application/json

    ...

##### Response

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

    [ {
      "guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
      "backupTime" : 1451649601000
    } ]

### GET /backup-files/detailed

Returns detailed list of backup files filtered by specified query parameters.

Request Parameters
name | type | description | constraints
--- | --- | --- | ---
backup | query |  |
backup-destination | query |  |
direction | query |  |
fail-on-non-successful | query |  | boolean
filter | query |  |
nameLike | query |  |
orderBy | query |  |
page | query |  |
path | query |  |
project-uuid | query |  |
protected-entity | query |  |
root-backup | query |  |
root-backup-file | query |  |
size | query |  |
type | query |  | "APP_IMAGE" or "CBT" or "CLOUD_DATABASE" or "DISK" or "DISK_INC" or "DISK_META" or "OS_FILE" or "SQLITE_DATABASE" or "STORAGE_META" or "UNRECOGNIZED" or "VM_DISK_META" or "VM_IMAGE" or "VM_META" or "VM_META_ZIP"
virtual-machine-disk | query |  |
with-modified-configs | query |  | required boolean

Response Body
media type | data type | description
--- | --- | ---
application/json | array of BackupFileDetails (JSON) | detailed list of backup files filtered by specified query parameters

#### Example

##### Request

    GET /backup-files/detailed
    Content-Type: */*
    Accept: application/json

    ...

##### Response

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

    [ {
      "guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67"
    } ]

### GET /backup-files/{guid}

Get a single backup file.

Request Parameters
name | type | description
--- | --- | ---
guid | path | specify local unique identifier for backup file (use by vProtect)

Response Body
media type | data type | description
--- | --- | ---
application/json | BackupFileDetails (JSON) | a single backup file details

#### Example

##### Request

    GET /backup-files/{guid}
    Content-Type: */*
    Accept: application/json

    ...

##### Response

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

    {
      "guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67"
    }

### POST /backup-files/backup-cleanup/paths

Request Body
media type | data type
--- | ---
application/json | BackupCleanupFilePathsQuery (JSON)

Response Body
media type | data type | description
--- | --- | ---
application/json | array of BackupCleanupEntityPaths (JSON) |

#### Example

##### Request

    POST /backup-files/backup-cleanup/paths
    Content-Type: application/json
    Accept: application/json

    { }

##### Response

    HTTP/1.1 201 Created
    Content-Type: application/json

    [ { } ]

### GET /backup-files/detailed/for-restore

Returns list of backup files filtered by specified query parameters for restore

Request Parameters
name | type | description | constraints
--- | --- | --- | ---
backup | query |  |
backup-destination | query |  |
direction | query |  |
fail-on-non-successful | query |  | boolean
filter | query |  |
nameLike | query |  |
orderBy | query |  |
page | query |  |
path | query |  |
project-uuid | query |  |
protected-entity | query |  |
root-backup | query |  |
root-backup-file | query |  |
size | query |  |
type | query |  | "APP_IMAGE" or "CBT" or "CLOUD_DATABASE" or "DISK" or "DISK_INC" or "DISK_META" or "OS_FILE" or "SQLITE_DATABASE" or "STORAGE_META" or "UNRECOGNIZED" or "VM_DISK_META" or "VM_IMAGE" or "VM_META" or "VM_META_ZIP"
virtual-machine-disk | query |  |
with-modified-configs | query |  | required boolean

Response Body
media type | data type | description
--- | --- | ---
application/json | array of BackupFileDetails (JSON) | list of backup files filtered by specified query parameters

#### Example

##### Request

    GET /backup-files/detailed/for-restore
    Content-Type: */*
    Accept: application/json

    ...

##### Response

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

    [ {
      "guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67"
    } ]