Get Backup Details for a Device

This API retrieves a list of device backups available in Device Inventory against any particular ADC device.

Before you begin

Before attempting to get back up details with this API, users must ensure any one of the ACF permission is available:
  • ADC > Backup & Restore > Object compare
This can be checked under Accounts > Role > Authorized Functions.

Request Structure

Endpoint: /adc-device-archives
Type: GET
Sample URL: https://<IP/HostName/TenantName>:<GWPORT>/avxapi/adc-device-archives?gwsource=external

To understand the elements of the sample URL, click here.

Headers:
Content-Type: application/json
Table 1. Input Parameter
Name Description
sessionId

Header

(Mandatory) Specifies the session ID of the user session received after login.

Type: String

Constraints: The session ID is used when username and password are not provided.

username

Header

(Mandatory) Specifies the login username used to access the AppViewX.

Type: String

Constraints: The username, along with the password, is used when the session ID is not provided.

password

Header

(Mandatory) Specifies the login password used to access the AppViewX.

Type: String

Constraints: The password, along with the username, is used when the session ID is not provided.

Content-Type

Header

(Mandatory) Specifies the format of the data in the payload.

Type: String

Constraints: The value of this param must be ‘application/json’.

gwsource

Query

(Mandatory) Specifies the source from which the request is triggered. The options are:
  • web
  • external
Type: String
deviceName

Query

(Mandatory) Name of the device.

Constraints: It can contain only alphanumeric characters, ‘-’ , ’_’ , ‘.’ , ‘*’ , ‘|’, ‘!’.

Response Structure

  • Status Code: 200 OK
  • Message: Successful
  • Headers:
    • Content-Type: application/json
Name Description
response

String

Contains the response params for the get backup details request. For more details, see response.
message

String

Success message or failure description in case of error.
appStatusCode

String

Application-specific status code for the response. Will be non-null for failure response.
tags More info in case of failure response.

Response

Name Description
<deviceName>

Key value pair

Device name given in request will be the key and the value is an object that contains the backup details. For more details, see Backup File Detail.

Backup File Details

Name Description
filename

String

Device name given in request will be the key and the value is an object that contains the backup details.
metadata

Key value pair

Metadata field denoting the backup details. For more details, see Backup File Metadata.
chunkSize

Integer

Size of the backup.
length

Integer

Length of the backup chunk stored in the database.
md5

String

MD5 sum of the device backup.
_id

String

Resource id denoting the backup file metadata stored in the database.

Backup File Metadata

Name Description
timeStamp

String

Time Stamp denoting the time on which the backup file is added to the database.
groupName

String[]

Group settings name in which the backup resides.
isEncrypted

Boolean

Boolean value denoting whether the device backup is encrypted or not.
deviceId

String

Resource ID of the device for which backup is retrieved.

Status Codes

HTTP Status Code appStatusCode Message Possible remediation
200 OK - Archive details retrieved successfully. -
400 Bad Request ADC_INV_1084 Device name is mandatory. Check and ensure if a non-null/non-empty value is given in query param field - ‘deviceName’.
404 Not Found ADC_INV_1076 Device not available for the given details. Check if the requested device is added in the inventory.

Sample Request/Response

Use Case

Get the list of archives for the device with name testDevice.

Request URL

https://<IP/HostName/TenantName>:<GWPORT>/avxapi/adc-device-archives

Sample Request
NA
Sample Response
{
  "response": {
    "testDevice": [
      {
        "name": null,
        "chunkSize": 261120,
        "length": 1192434,
        "md5": "f2663fdf65d3db4644bd074fd6306de1",
        "filename": "testDevice_1597903384000.tar.gz",
        "metadata": {
          "timeStamp": "1597903439000",
          "mode": "daily",
          "groupName": [
            "test"
          ],
          "isEncrypted": "false",
          "deviceId": "5f36bed67620c40e97e30348"
        },
        "_id": "5f3e124f25ac8a2582b08e57"
      }
    ]
  },
  "message": "Archive details retrieved successfully.",
  "appStatusCode": null,
  "tags": null,
  "headers": null
}

Reference

Understanding the sample URL:
  • IP/HostName/TenantName: Replace with the actual IP address, hostname, or tenant name based on the specific configuration in AppViewX.
    • IP: A unique identifier assigned to each device connected to a computer network that uses the Internet Protocol for communication

      The IP address will be included in the endpoint URL for an on-prem deployment.

    • HostName: A human-readable label assigned to a device (host) on a network

      The hostname will be included in the endpoint URL for an on-prem deployment.

    • TenantName: An identifier label for a tenant given to indicate which tenant's data the API request will access/modify

      The tenant name will be included in the endpoint URL for a SaaS deployment.

  • GWPORT: AppViewX gateway port

    A gateway port refers to a network port through which data is sent and received to communicate with a gateway in an on-prem deployment.

    Example: 31443

  • avxapi: Path parameter value (static) that is part of the endpoint's URL
  • Endpoint: Endpoint of the API, for example: execute-hook
  • gwsource: Source or origin of a gateway, for example: external.