# Dashboard Controller Resource

The API allows you to get information for dashboard.

### GET /dashboard/backup-destination-stats

Returns restore statistics.

Response Body
media type | data type | description
--- | --- | ---
application/json | BackupDestinationStats (JSON) | restore statistics

#### Example

##### Request

    GET /dashboard/backup-destination-stats
    Content-Type: */*
    Accept: application/json

    ...

##### Response

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

    { }

### GET /dashboard/backup-stats

Returns backup statistics from specified period.

Request Parameters
name | type | description | constraints
--- | --- | --- | ---
from | query |  | long
project-uuid | query |  |
protected-entity-type | query |  | "APP" or "CLOUD" or "CLOUD_GROUP" or "CLOUD_SITE" or "CLOUD_TEAMS" or "CLOUD_USER" or "OS" or "OS_AGENT" or "STORAGE" or "VM"
to | query |  | long

Response Body
media type | data type | description
--- | --- | ---
application/json | ArchivedBackupStatsDto (JSON) | backup statistics

#### Example

##### Request

    GET /dashboard/backup-stats
    Content-Type: */*
    Accept: application/json

    ...

##### Response

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

    { }

### GET /dashboard/backups-in-last-24h

Returns backup information in last 24 hours.

Response Body
media type | data type | description
--- | --- | ---
application/json | array of BackupsInLast24Response (JSON) | backup information in last 24 hours.

#### Example

##### Request

    GET /dashboard/backups-in-last-24h
    Content-Type: */*
    Accept: application/json

    ...

##### Response

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

    [ { } ]

### GET /dashboard/general-info

Returns general information for dashboard.

Response Body
media type | data type | description
--- | --- | ---
application/json | GeneralInfoResponse (JSON) | general information for dashboard

#### Example

##### Request

    GET /dashboard/general-info
    Content-Type: */*
    Accept: application/json

    ...

##### Response

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

    { }

### GET /dashboard/license

Returns short license.

Response Body
media type | data type | description
--- | --- | ---
application/json | LicenseShortResponse (JSON) | short license.

#### Example

##### Request

    GET /dashboard/license
    Content-Type: */*
    Accept: application/json

    ...

##### Response

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

    {
      "validUntil" : 1451649601000
    }

### GET /dashboard/protection

Check protection statistics for virtual machines and applications. 'Protected' - take VM and check last backup time. This time should be after the expected last backup time from all schedules of given VM. Otherwise VM is 'not protected'.

Request Parameters
name | type | description | constraints
--- | --- | --- | ---
project-uuid | query |  |
vm-backup-policy-assigned | query |  | boolean

Response Body
media type | data type | description
--- | --- | ---
application/json | ProtectionResponse (JSON) | protection statistics for virtual machines and applications.

#### Example

##### Request

    GET /dashboard/protection
    Content-Type: */*
    Accept: application/json

    ...

##### Response

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

    { }

### GET /dashboard/report

Returns backup report. If protected entity type is not specified, default protected entity type is set to VM.

Request Parameters
name | type | description | constraints
--- | --- | --- | ---
from | query |  | long
project-uuid | query |  |
protectedEntityType | query |  | "APP" or "CLOUD" or "CLOUD_GROUP" or "CLOUD_SITE" or "CLOUD_TEAMS" or "CLOUD_USER" or "OS" or "OS_AGENT" or "STORAGE" or "VM"
to | query |  | long

Response Body
media type | data type | description
--- | --- | ---
application/json | SummaryResponse (JSON) | backup report

#### Example

##### Request

    GET /dashboard/report
    Content-Type: */*
    Accept: application/json

    ...

##### Response

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

    { }

### POST /dashboard/report-email

Send backup report to email.

Request Parameters
name | type | description | default | constraints
--- | --- | --- | --- | ---
count-type | query |  | STORED_BYTES | "FRONTEND_BYTES" or "STORED_BYTES"
from | query |  |  | long
project-uuid | query |  |  |
protectedEntityType | query |  |  | "APP" or "CLOUD" or "CLOUD_GROUP" or "CLOUD_SITE" or "CLOUD_TEAMS" or "CLOUD_USER" or "OS" or "OS_AGENT" or "STORAGE" or "VM"
to | query |  |  | long

Request Body
media type | data type | description
--- | --- | ---
application/json | ChargebackEmailRequest (JSON) | report domain filters

#### Example

##### Request

    POST /dashboard/report-email
    Content-Type: application/json

    { }

##### Response

    HTTP/1.1 201 Created

### POST /dashboard/report-html

Download HTML report.

Request Parameters
name | type | description | default | constraints
--- | --- | --- | --- | ---
count-type | query |  | STORED_BYTES | "FRONTEND_BYTES" or "STORED_BYTES"
from | query |  |  | long
project-uuid | query |  |  |
protectedEntityType | query |  |  | "APP" or "CLOUD" or "CLOUD_GROUP" or "CLOUD_SITE" or "CLOUD_TEAMS" or "CLOUD_USER" or "OS" or "OS_AGENT" or "STORAGE" or "VM"
to | query |  |  | long

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

Response Body
media type | data type | description
--- | --- | ---
application/json | object (JSON) |

#### Example

##### Request

    POST /dashboard/report-html
    Content-Type: application/json
    Accept: application/json

    { }

##### Response

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

    ...

### POST /dashboard/report-pdf

Download PDF report.

Request Parameters
name | type | description | default | constraints
--- | --- | --- | --- | ---
count-type | query |  | STORED_BYTES | "FRONTEND_BYTES" or "STORED_BYTES"
from | query |  |  | long
project-uuid | query |  |  |
protectedEntityType | query |  |  | "APP" or "CLOUD" or "CLOUD_GROUP" or "CLOUD_SITE" or "CLOUD_TEAMS" or "CLOUD_USER" or "OS" or "OS_AGENT" or "STORAGE" or "VM"
to | query |  |  | long

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

Response Body
media type | data type | description
--- | --- | ---
application/json | object (JSON) |

#### Example

##### Request

    POST /dashboard/report-pdf
    Content-Type: application/json
    Accept: application/json

    { }

##### Response

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

    ...

### POST /dashboard/search

Search by name in vProtect.

Request Body
media type | data type | description
--- | --- | ---
application/json | string (JSON) | specify search name

Response Body
media type | data type | description
--- | --- | ---
application/json | EntitiesWithNameListRecord (JSON) | search result by name

#### Example

##### Request

    POST /dashboard/search
    Content-Type: application/json
    Accept: application/json

    ...

##### Response

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

    { }

### GET /dashboard/staging-space

Returns information about space for staging.

Response Body
media type | data type | description
--- | --- | ---
application/json | array of StagingSpaceResponse (JSON) | space for staging

#### Example

##### Request

    GET /dashboard/staging-space
    Content-Type: */*
    Accept: application/json

    ...

##### Response

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

    [ { } ]

### GET /dashboard/task-stats

Returns task stats for dashboard.

Response Body
media type | data type | description
--- | --- | ---
application/json | TaskStatsResponse (JSON) | task stats for dashboard

#### Example

##### Request

    GET /dashboard/task-stats
    Content-Type: */*
    Accept: application/json

    ...

##### Response

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

    { }

### GET /dashboard/vm-backup-size-stats

Return the list of backup and restore size (size per day) in specified date range.

Request Parameters
name | type | description | constraints
--- | --- | --- | ---
from | query |  | required long
project-uuid | query |  |
setting | query |  | required long
to | query |  | required long

Response Body
media type | data type | description
--- | --- | ---
application/json | SizeStatsResponse (JSON) | list of backup and restore size in specified date range

#### Example

##### Request

    GET /dashboard/vm-backup-size-stats
    Content-Type: */*
    Accept: application/json

    ...

##### Response

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

    { }