# Vault Manager API **Base URL**: https://dev-cloud.acronis.com/api/vault_manager/v1 ## Security ### OAuth 2.0 Supported grant types: * `password` * `authorization_code` Authorization URI example: `https://dev-cloud.acronis.com/api/2/idp/authorize` Access token URI example: `https://dev-cloud.acronis.com/api/2/idp/token` ### Request parameters #### Headers | Name | Description | |------|-------------| | `Authorization` | (Required) Usual OAuth2 access token.

**Type**: String
**Pattern**: `^Bearer [0-9a-zA-Z\-\._~+/]*=$` | ### Responses | Code | Description | |------|-------------| | `401` | The request was denied due to an invalid, expired or missing bearer access token. | | `403` | The request was denied due to the bearer access token having insufficient privileges. | ### Scopes * `vault_manager::system_admin` * `vault_manager::admin` * `vault_manager::core_restore` * `vault_manager::c2c_restore` * `vault_manager::orphanage_readwrite` * `protection::readonly` * `root_admin` * `partner_admin` * `infra_admin` ## Endpoints ### GET /backups Fetches a list of backups. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` * `vault_manager::core_restore` * `vault_manager::c2c_restore` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `vaultId` | (Optional) ID of vault to search archives for.

**Type**: String
**Format**: uuid | | `type` | (Optional) Show only backups of specified archive types.

**Type**: String | | `agentId` | (Optional) Show only backups for specified agent.

**Type**: String
**Format**: uuid | | `updated` | (Optional) Show only backups updated within specified time range.

**Type**: Array of String
**Array type description:**
A filter by date and time in RFC 3339 format with the support
for comparison operators.

Available operators:

* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals

**Type**: String | | `regtime` | (Optional) Show only backups created or deleted within specified time range.

**Type**: Array of String
**Array type description:**
A filter by date and time in RFC 3339 format with the support
for comparison operators.

Available operators:

* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals

**Type**: String | | `storageType` | (Optional) Show only backups located in vaults of specified storage types.

**Type**: Array of String
**Array type description:**
Vault storage type.

**Type**: String
**Allowed values**:
- `unknown`
- `local_folder`
- `network_share`
- `ftp`
- `sftp`
- `cd`
- `tape`
- `storage_server`
- `asz`
- `removable_drive`
- `online`
- `nfs_share`
- `esx`
- `local_abgw`
- `microsoft_azure`
- `amazon_s3`
- `s3_compatible` | | `storageId` | (Optional) Show only backups located in vaults of the storage that is identified by specified storage ID.

**Type**: String
**Format**: uuid | | `forensic` | (Optional) Show only backups in archives with forensic data or without forensic.

If not specified, backups are listed regardless of forensic data.

**Type**: Boolean | | `resourceId` | (Optional) Show only backups for specified resources.

**Type**: Array of String
**Array type description:**
Universally unique identifier.

**Type**: String
**Format**: uuid | | `changeTag` | (Optional) Show only backups for specified change tag.

**Type**: String | | `showDeleted` | (Optional) A flag that specifies what should be added to the list of returned backups:

* 1 - All deleted backups are added to the list of archives.
* 2 - Only deleted backups marked as immutable are added to the list of backups.
* 0 - No deleted backups are added to the list of backups.

**Type**: Integer
**Allowed values**:
- `0`
- `1`
- `2` | | `embed` | (Optional) An array of field names to include in the response.

Each value represents the name of the extension field to be included in the base response.

**Type**: Array of String
**Array type description:**
**Type**: String
**Allowed values**:
- `archive`
- `automated_test_failover_validation_status`
- `validation_status`
- `vault` | | `created` | (Optional) Show only backups created within specified time range.

**Type**: Array of String
**Array type description:**
A filter by date and time in RFC 3339 format with the support
for comparison operators.

Available operators:

* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals

**Type**: String | | `protectedByPassword` | (Optional) Show only backups in protected by password or unprotected by password archives.

If not specified, backups are listed regardless of their password protection status.

**Type**: Boolean | | `backupType` | (Optional) Show only backups of specified types.

**Type**: Array of String
**Array type description:**
Backup type.

**Type**: String
**Allowed values**:
- `full`
- `incremental`
- `differential`
- `unknown`
- `cdp` | | `tapeId` | (Optional) Show only backups for specified tapes.

**Type**: Array of String
**Array type description:**
Universally unique identifier.

**Type**: String
**Format**: uuid | | `triggeredBy` | (Optional) Show a list of Backups triggered by specified reason.

**Type**: Array of String
**Array type description:**
Reason why Backup was created.

**Type**: String
**Allowed values**:
- `patch_management` | | `avScanningDate` | (Optional) Show only backups scanned within the specified time range OR never scanned backups if "none" is specified.

**Type**: Array of String
**Array type description:**
A filter by date and time in RFC 3339 format with the support
for comparison operators.

Available operators:

* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals

**Type**: String | | `vulnerabilityAssessmentStatus` | (Optional) Show only backups with specified Vulnerability Assessment Result statuses.

**Type**: Array of String
**Array type description:**
**Type**: String
**Allowed values**:
- `notScanned`
- `clean`
- `vulnerable` | | `malwareAssessmentStatus` | (Optional) Show only backups with specified Malware Assessment Result statuses.

**Type**: Array of String
**Array type description:**
**Type**: String
**Allowed values**:
- `notScanned`
- `clean`
- `malware` | | `includeActions` | (Optional) Calculate and include possible actions in the response.

**Type**: Boolean | | `targetAgentId` | (Optional) Select target agent to calculate actions.

**Type**: String
**Format**: uuid | | `before` | (Optional) Base64-encoded token obtained from the previous response.
Points to the end of the page.

**Type**: String | | `after` | (Optional) Base64-encoded token obtained from the previous response.
Points to the start of the page.

**Type**: String | | `offset` | (Optional) The number of elements to skip before beginning to return elements.

**Type**: Integer
**Default**: 0 | | `limit` | (Optional) Limit the number of elements to return in one page.

**Type**: Integer
**Maximum**: 1000
**Default**: 100 | | `count` | (Optional) Show total count in the response.

**Type**: Boolean
**Default**: false | | `order` | (Optional) An ordering filter that orders the results by value of the specified properties.
Property in inner object can be specified using dot, e.g. orphanage.status.

Available operators:

* `asc` - ascending
* `desc` - descending

**Type**: String | #### Responses | Code | Description | |------|-------------| | `200` | The request was successful. | ### DELETE /backups Deletes backups containing selected resources. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `resourceID` | (Required) ID of resource.

**Type**: String
**Format**: uuid | | `changeTag` | (Optional) Tag for run tasks.

**Type**: String | #### Responses | Code | Description | |------|-------------| | `200` | List of task IDs created. | | `500` | Internal error occurred. | | `400` | Invalid request. | ### GET /backed_up_resources Fetches a list of backed up resources. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `vaultId` | (Optional) ID of vault to search backups for.

**Type**: String
**Format**: uuid | | `archiveId` | (Optional) ID of archive to search backups for.

**Type**: String
**Format**: uuid | | `tapeId` | (Optional) Filter backups for specified tapes.

**Type**: Array of String
**Array type description:**
Universally unique identifier.

**Type**: String
**Format**: uuid | | `showDeleted` | (Optional) A flag that specifies what should be added to the list of returned returned backed up resources:

* 1 - Resources contained in live and deleted archives.
* 2 - Resources contained only in live and immutable archives.
* 3 - Resources contained in deleted archives only.
* 0 - Resources contained in live archives only.

**Type**: Integer
**Allowed values**:
- `0`
- `1`
- `2`
- `3`

**Default**: 0 | | `before` | (Optional) Base64-encoded token obtained from the previous response.
Points to the end of the page.

**Type**: String | | `after` | (Optional) Base64-encoded token obtained from the previous response.
Points to the start of the page.

**Type**: String | | `offset` | (Optional) The number of elements to skip before beginning to return elements.

**Type**: Integer
**Default**: 0 | | `limit` | (Optional) Limit the number of elements to return in one page.

**Type**: Integer
**Maximum**: 1000
**Default**: 100 | | `count` | (Optional) Show total count in the response.

**Type**: Boolean
**Default**: false | | `order` | (Optional) An ordering filter that orders the results by value of the specified properties.
Property in inner object can be specified using dot, e.g. orphanage.status.

Available operators:

* `asc` - ascending
* `desc` - descending

**Type**: String | #### Responses | Code | Description | |------|-------------| | `200` | The request was successful. | ### GET /archives Fetches a list of archives. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `archiveId` | (Optional) Show a list of archives of specified archive IDs.

**Type**: Array of String
**Array type description:**
Universally unique identifier.

**Type**: String
**Format**: uuid | | `showDeleted` | (Optional) A flag that specifies what should be added to the list of returned archives:

* 1 - All deleted archives are added to the list of archives.
* 2 - Only deleted archives marked as immutable are added to the list of archives.
* 3 - Only deleted archives are included to the list of archives, other ones are excluded.
* 0 - No deleted archives are added to the list of archives.

**Type**: Integer
**Allowed values**:
- `0`
- `1`
- `2`
- `3` | | `includeStats` | (Optional) Include additional information about archive.

If false or not specified, the `stats` field will not be included in the response data.

**Type**: Boolean
**Default**: false | | `includeStorageStats` | (Optional) Include storage-side stats about archive calculated at DC and return them in the `immutable_size` field.

If false or not specified, the `immutable_size` field will not be included in the response data.

**Type**: Boolean
**Default**: false | | `agentId` | (Optional) Show a list of archives of specified agent ID.

**Type**: String
**Format**: uuid | | `name` | (Optional) Show a list of archives of specified archive name. Supports matching any number of characters using asterisk wildcard character if it's enabled with the `wildcard` query string parameter.

**Type**: String | | `wildcard` | (Optional) Enable wildcard support in the name filter.

**Type**: Boolean
**Default**: false | | `resourceId` | (Optional) Show only archives that contain backups for at least one resource from the specified list.

**Type**: Array of String
**Array type description:**
Universally unique identifier.

**Type**: String
**Format**: uuid | | `storageType` | (Optional) Show a list of Archives in vaults of specified storage types.

**Type**: Array of String
**Array type description:**
Vault storage type.

**Type**: String
**Allowed values**:
- `unknown`
- `local_folder`
- `network_share`
- `ftp`
- `sftp`
- `cd`
- `tape`
- `storage_server`
- `asz`
- `removable_drive`
- `online`
- `nfs_share`
- `esx`
- `local_abgw`
- `microsoft_azure`
- `amazon_s3`
- `s3_compatible` | | `type` | (Optional) Show a list of Archives of specified types.

**Type**: Array of String
**Array type description:**
Archive type.

**Type**: String
**Allowed values**:
- `unknown`
- `file`
- `image`
- `vss_application`
- `msexchange`
- `msexchange_doc`
- `mssql`
- `oracle`
- `ad`
- `empty` | | `format` | (Optional) Show a list of Archives of specified formats.

**Type**: Array of String
**Array type description:**
Format of archive.

**Type**: String
**Allowed values**:
- `11`
- `12`
- `alwaysIncremental` | | `backupPlanId` | (Optional) Show only archives created by backup plan with specified ID.

**Type**: String
**Format**: uuid | | `centralizedPlanId` | (Optional) Show only archives created by centralized plan with specified ID.

**Type**: String
**Format**: uuid | | `includeCatalogInfo` | (Optional) Include cataloged status of archive.

If false or not specified, `cataloged_status` and `actions` fields will not
be included in the response data.

**Type**: Boolean
**Default**: false | | `forensic` | (Optional) Show only archives with forensic data or without forensic.

If not specified, archives are listed regardless of forensic data.

**Type**: Boolean | | `includePrePatchManagement` | (Optional) Include pre-patch management status of archive.

If false or not specified, the `pre_patch_management` field will not be included in the response data.

**Type**: Boolean
**Default**: false | | `prePatchManagementOnly` | (Optional) Show only archives with at least one backup which was made before patch management.

If false or not specified, archives are listed regardless of this filter.

**Type**: Boolean
**Default**: false | | `includeMalwareFound` | (Optional) Include malware assessment result of backups in the archive.

If false or not specified, the `malware_found` field will not be included in the response data.

**Type**: Boolean
**Default**: false | | `malwareFound` | (Optional) Show only archives with backups that have the specified malware status.

Possible malware statuses:

* notScanned - No backups were scanned in the archive.
* clean - Backups that don't contain malware.
* malware - Backup that contain malware.

**Type**: Array of String
**Array type description:**
**Type**: String
**Allowed values**:
- `notScanned`
- `clean`
- `malware` | | `includeOrphanage` | (Optional) Include orphanage status of archive.

If false or not specified, the `orphanage` object will not be included in the response data.

**Type**: Boolean
**Default**: false | | `orphanage.status` | (Optional) Filter archives by orphanage status.

* NONE - Not orphaned
* NO_POLICY - Orphaned due to missing policy
* NO_RESOURCE - Orphaned due to missing resource
If not specified, archives are listed regardless of their orphanage status.

**Type**: Array of String
**Array type description:**
**Type**: String
**Allowed values**:
- `NONE`
- `NO_POLICY`
- `NO_RESOURCE` | | `fromDate` | (Optional) Filters archives by the last updated date and time that is greater or equal to the given date and time.

**Type**: DateTime | | `toDate` | (Optional) Filters archives by the last updated date and time that is less than or equal to the given date and time.

**Type**: DateTime | | `includeActions` | (Optional) Calculate and include possible actions in the response.

**Type**: Boolean | | `targetAgentId` | (Optional) Select target agent to calculate actions.

**Type**: String
**Format**: uuid | | `before` | (Optional) Base64-encoded token obtained from the previous response.
Points to the end of the page.

**Type**: String | | `after` | (Optional) Base64-encoded token obtained from the previous response.
Points to the start of the page.

**Type**: String | | `offset` | (Optional) The number of elements to skip before beginning to return elements.

**Type**: Integer
**Default**: 0 | | `limit` | (Optional) Limit the number of elements to return in one page.

**Type**: Integer
**Maximum**: 1000
**Default**: 100 | | `count` | (Optional) Show total count in the response.

**Type**: Boolean
**Default**: false | | `order` | (Optional) An ordering filter that orders the results by value of the specified properties.
Property in inner object can be specified using dot, e.g. orphanage.status.

Available operators:

* `asc` - ascending
* `desc` - descending

**Type**: String | #### Responses | Code | Description | |------|-------------| | `200` | The request was successful. | ### DELETE /archives Deletes archives containing selected resources. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `resourceId` | (Required) ID of resource.

**Type**: String
**Format**: uuid | | `changeTag` | (Required) Tag for run tasks.

**Type**: String | | `vaultId` | (Optional) ID of vault.

**Type**: String
**Format**: uuid | | `clusterId` | (Optional) Limit affinity to this cluster.

**Type**: String
**Format**: uuid | | `locationCredentialsId` | (Optional) ID of credentials to access vault.

**Type**: String | | `targetAgentId` | (Optional) ID of the agent to execute the task.

**Type**: String | #### Responses | Code | Description | |------|-------------| | `200` | List of task IDs created. | | `500` | Internal error occurred. | | `400` | Invalid request. | ### GET /archives/{archiveID}/backups Fetches a list of backups within the archive. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` * `vault_manager::core_restore` * `vault_manager::c2c_restore` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `resourceId` | (Optional) Show only backups for specified resources.

**Type**: Array of String
**Array type description:**
Universally unique identifier.

**Type**: String
**Format**: uuid | | `changeTag` | (Optional) Show only backups for specified change tag.

**Type**: String | | `showDeleted` | (Optional) A flag that specifies what should be added to the list of returned backups:

* 1 - All deleted backups are added to the list of archives.
* 2 - Only deleted backups marked as immutable are added to the list of backups.
* 0 - No deleted backups are added to the list of backups.

**Type**: Integer
**Allowed values**:
- `0`
- `1`
- `2` | | `embed` | (Optional) An array of field names to include in the response.

Each value represents the name of the extension field to be included in the base response.

**Type**: Array of String
**Array type description:**
**Type**: String
**Allowed values**:
- `archive`
- `automated_test_failover_validation_status`
- `validation_status`
- `vault` | | `created` | (Optional) Show only backups created within specified time range.

**Type**: Array of String
**Array type description:**
A filter by date and time in RFC 3339 format with the support
for comparison operators.

Available operators:

* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals

**Type**: String | | `protectedByPassword` | (Optional) Show only backups in protected by password or unprotected by password archives.

If not specified, backups are listed regardless of their password protection status.

**Type**: Boolean | | `backupType` | (Optional) Show only backups of specified types.

**Type**: Array of String
**Array type description:**
Backup type.

**Type**: String
**Allowed values**:
- `full`
- `incremental`
- `differential`
- `unknown`
- `cdp` | | `tapeId` | (Optional) Show only backups for specified tapes.

**Type**: Array of String
**Array type description:**
Universally unique identifier.

**Type**: String
**Format**: uuid | | `triggeredBy` | (Optional) Show a list of Backups triggered by specified reason.

**Type**: Array of String
**Array type description:**
Reason why Backup was created.

**Type**: String
**Allowed values**:
- `patch_management` | | `avScanningDate` | (Optional) Show only backups scanned within the specified time range OR never scanned backups if "none" is specified.

**Type**: Array of String
**Array type description:**
A filter by date and time in RFC 3339 format with the support
for comparison operators.

Available operators:

* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals

**Type**: String | | `vulnerabilityAssessmentStatus` | (Optional) Show only backups with specified Vulnerability Assessment Result statuses.

**Type**: Array of String
**Array type description:**
**Type**: String
**Allowed values**:
- `notScanned`
- `clean`
- `vulnerable` | | `malwareAssessmentStatus` | (Optional) Show only backups with specified Malware Assessment Result statuses.

**Type**: Array of String
**Array type description:**
**Type**: String
**Allowed values**:
- `notScanned`
- `clean`
- `malware` | | `includeActions` | (Optional) Calculate and include possible actions in the response.

**Type**: Boolean | | `targetAgentId` | (Optional) Select target agent to calculate actions.

**Type**: String
**Format**: uuid | | `before` | (Optional) Base64-encoded token obtained from the previous response.
Points to the end of the page.

**Type**: String | | `after` | (Optional) Base64-encoded token obtained from the previous response.
Points to the start of the page.

**Type**: String | | `offset` | (Optional) The number of elements to skip before beginning to return elements.

**Type**: Integer
**Default**: 0 | | `limit` | (Optional) Limit the number of elements to return in one page.

**Type**: Integer
**Maximum**: 1000
**Default**: 100 | | `count` | (Optional) Show total count in the response.

**Type**: Boolean
**Default**: false | | `order` | (Optional) An ordering filter that orders the results by value of the specified properties.
Property in inner object can be specified using dot, e.g. orphanage.status.

Available operators:

* `asc` - ascending
* `desc` - descending

**Type**: String | #### Responses | Code | Description | |------|-------------| | `200` | The request was successful. | ### GET /vaults Fetches a list of vaults. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `id` | (Optional) IDs of vaults to fetch. Multiple values can be specified by repeating the query parameter.

**Type**: Array of String
**Array type description:**
Universally unique identifier.

**Type**: String
**Format**: uuid | | `storageNodeId` | (Optional) ID of Storage node to search vaults for.

**Type**: String
**Format**: uuid | | `managed` | (Optional) Show only managed or unmanaged vaults.

If not specified, all types of vaults are listed.

**Type**: Boolean | | `name` | (Optional) Filter vaults by name. Supports matching any number of characters using asterisk wildcard character.

**Type**: String | | `hostname` | (Required) Filter vaults by hostname. Supports matching any number of characters using asterisk wildcard character.

**Type**: String | | `resourceId` | (Optional) Show only vaults which contains archives of specified resource ID.

**Type**: String
**Format**: uuid | | `uri` | (Optional) Filter vaults by URI. Supports matching any number of characters using asterisk wildcard character.

**Type**: String | | `type` | (Optional) Show only vaults of specified storage types.

**Type**: Array of String
**Array type description:**
Vault storage type.

**Type**: String
**Allowed values**:
- `unknown`
- `local_folder`
- `network_share`
- `ftp`
- `sftp`
- `cd`
- `tape`
- `storage_server`
- `asz`
- `removable_drive`
- `online`
- `nfs_share`
- `esx`
- `local_abgw`
- `microsoft_azure`
- `amazon_s3`
- `s3_compatible` | | `storageId` | (Optional) Show only vaults in the storage with specified ID.

**Type**: String
**Format**: uuid | | `connectionID` | (Optional) Show only vaults linked to Cloud Connection with specified Connection ID.

**Type**: String | | `accessibleForAgent` | (Optional) Show only vaults that satisfy one of following conditions:

1. The vault is local to the specified agent (its `storage_type` is
`local_folder`, `cd`, `tape`, `asz` or `removable_drive` AND `managing_agent_id=accessibleForAgent`).
1. The vault is not local to any agent (for `storage_type` that are not listed in first condition).

**Type**: String | | `tenantId` | (Optional) Show only vaults in specific Tenant ID (do not include its subtenants).

**Type**: any | | `query` | (Optional) Show vaults that contain query string in the name or URI or hostname.

**Type**: String | | `includeStats` | (Optional) Calculate and include vault stats.

**Type**: Boolean | | `includeStorageStats` | (Optional) Include storage-side stats about vault calculated at DC and return them in the `immutable_size` field.

If false or not specified, the `immutable_size` field will not be included in the response data.

**Type**: Boolean | | `includeLastBackupTime` | (Optional) Calculate and include vault's last backup time.

**Type**: Boolean | | `includeActions` | (Optional) Calculate and include possible actions in the response.

**Type**: Boolean | | `includeDeleted` | (Optional) Whether to include vaults marked as deleted.

**Type**: Boolean | | `before` | (Optional) Base64-encoded token obtained from the previous response.
Points to the end of the page.

**Type**: String | | `after` | (Optional) Base64-encoded token obtained from the previous response.
Points to the start of the page.

**Type**: String | | `offset` | (Optional) The number of elements to skip before beginning to return elements.

**Type**: Integer
**Default**: 0 | | `limit` | (Optional) Limit the number of elements to return in one page.

**Type**: Integer
**Maximum**: 1000
**Default**: 100 | | `count` | (Optional) Show total count in the response.

**Type**: Boolean
**Default**: false | | `order` | (Optional) An ordering filter that orders the results by value of the specified properties.
Property in inner object can be specified using dot, e.g. orphanage.status.

Available operators:

* `asc` - ascending
* `desc` - descending

**Type**: String | #### Responses | Code | Description | |------|-------------| | `200` | - | ### POST /vaults Creates or attaches a vault. Issues corresponding commands to agents. If commands are completed successfully, Vault Manager will store the new vault record. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `action` | Specifies how to add new vault: on attach and create corresponding commands will be issued to agent.

**Type**: String
**Allowed values**:
- `attach`
- `create` | | `config` | Vault description.

**Type**: Object | | `credentials_id` | ID of credentials to access vault.

**Type**: String | | `protected_storage` | **Type**: Object | **Example**: ```json { "action": "create", "config": { "name": "simple", "hostname": "MY-PC", "managing_agent_id": "139b6b8d-054f-4b11-9d37-828de6f9fb93", "access_address": "10.65.80.48", "version": "LOCATION_VERSION_ABR11_7", "storage_type": "storage_server", "settings": { "encryption_id": "09893890-27ab-4383-2ab7-810238109893", "storage_uri": "D:/vaults/simple", "encryption_type": "CRYPT_AES128", "comment": "", "storage_type": "local_folder" } } } ``` #### Responses | Code | Description | |------|-------------| | `201` | - | ### POST /vaults/refresh Sets an agent task to refresh vaults. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `vault_ids` | **Type**: Array of String
**Array type description:**
Universally unique identifier.

**Type**: String
**Format**: uuid | | `level` | Refresh level.

**Type**: String
**Allowed values**:
- `archive`
- `backup`
- `backup_content` | | `resources` | **Type**: Array of String
**Array type description:**
ID of resources to refresh.

**Type**: String | | `task_tag` | Tag to identify the task.

**Type**: String | | `include_immutable` | When true, show deleted immutable backups.

**Type**: Boolean | | `target_agent_id` | Universally unique identifier.

**Type**: String
**Format**: uuid | | `location_credentials_id` | ID of credentials to access vault.

**Type**: String | **Example**: ```json { "vault_ids": [ "1eb86058-bff3-183f-3033-442c1b61aba1" ], "location_credentials_id": "bdc753ee-56ec-2905-d2b4-cd469da1a49f@location!383", "target_agent_id": "B489DE2E-3AC0-421F-BB07-6A28880896B5", "include_immutable": false, "level": "archive" } ``` #### Responses | Code | Description | |------|-------------| | `200` | List of task IDs created. | | `500` | Internal error occurred. | | `400` | Invalid request. | ### GET /vaults/{vaultID} Fetches a vault. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `includeStats` | (Optional) Calculate and include vault stats.

**Type**: Boolean | | `includeStorageStats` | (Optional) Include storage-side stats about vault calculated at DC and return them in the `immutable_size` field.

If false or not specified, the `immutable_size` field will not be included in the response data.

**Type**: Boolean | | `includeLastBackupTime` | (Optional) Calculate and include vault last backup time.

**Type**: Boolean | | `includeActions` | (Optional) Calculate and include possible actions in the response.

**Type**: Boolean | #### Responses | Code | Description | |------|-------------| | `200` | - | | `500` | Internal error occurred. | | `400` | Invalid request. | | `404` | Resource not found. | ### DELETE /vaults/{vaultID} Unregisters, deletes or detaches a vault. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `tenantID` | (Optional) Tenant ID (where the vault will be removed from) to separate the target tenant from the effective one

**Type**: any | ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `action` | **Type**: String
**Allowed values**:
- `delete`
- `detach`
- `unregister` | **Example**: ```json { "action": "delete" } ``` #### Responses | Code | Description | |------|-------------| | `204` | The vault was deleted successfully. | | `404` | The vault is not found. | | `409` | Vault update has failed because its last seen time is in the past. | | `500` | Any other error. | | `400` | Invalid request. | ### GET /vaults/{vaultID}/archives Fetches a list of vault archives. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `archiveId` | (Optional) Show a list of archives of specified archive IDs.

**Type**: Array of String
**Array type description:**
Universally unique identifier.

**Type**: String
**Format**: uuid | | `showDeleted` | (Optional) A flag that specifies what should be added to the list of returned archives:

* 1 - All deleted archives are added to the list of archives.
* 2 - Only deleted archives marked as immutable are added to the list of archives.
* 3 - Only deleted archives are included to the list of archives, other ones are excluded.
* 0 - No deleted archives are added to the list of archives.

**Type**: Integer
**Allowed values**:
- `0`
- `1`
- `2`
- `3` | | `includeStats` | (Optional) Include additional information about archive.

If false or not specified, the `stats` field will not be included in the response data.

**Type**: Boolean
**Default**: false | | `includeStorageStats` | (Optional) Include storage-side stats about archive calculated at DC and return them in the `immutable_size` field.

If false or not specified, the `immutable_size` field will not be included in the response data.

**Type**: Boolean
**Default**: false | | `agentId` | (Optional) Show a list of archives of specified agent ID.

**Type**: String
**Format**: uuid | | `name` | (Optional) Show a list of archives of specified archive name. Supports matching any number of characters using asterisk wildcard character if it's enabled with the `wildcard` query string parameter.

**Type**: String | | `wildcard` | (Optional) Enable wildcard support in the name filter.

**Type**: Boolean
**Default**: false | | `resourceId` | (Optional) Show only archives that contain backups for at least one resource from the specified list.

**Type**: Array of String
**Array type description:**
Universally unique identifier.

**Type**: String
**Format**: uuid | | `storageType` | (Optional) Show a list of Archives in vaults of specified storage types.

**Type**: Array of String
**Array type description:**
Vault storage type.

**Type**: String
**Allowed values**:
- `unknown`
- `local_folder`
- `network_share`
- `ftp`
- `sftp`
- `cd`
- `tape`
- `storage_server`
- `asz`
- `removable_drive`
- `online`
- `nfs_share`
- `esx`
- `local_abgw`
- `microsoft_azure`
- `amazon_s3`
- `s3_compatible` | | `type` | (Optional) Show a list of Archives of specified types.

**Type**: Array of String
**Array type description:**
Archive type.

**Type**: String
**Allowed values**:
- `unknown`
- `file`
- `image`
- `vss_application`
- `msexchange`
- `msexchange_doc`
- `mssql`
- `oracle`
- `ad`
- `empty` | | `format` | (Optional) Show a list of Archives of specified formats.

**Type**: Array of String
**Array type description:**
Format of archive.

**Type**: String
**Allowed values**:
- `11`
- `12`
- `alwaysIncremental` | | `backupPlanId` | (Optional) Show only archives created by backup plan with specified ID.

**Type**: String
**Format**: uuid | | `centralizedPlanId` | (Optional) Show only archives created by centralized plan with specified ID.

**Type**: String
**Format**: uuid | | `includeCatalogInfo` | (Optional) Include cataloged status of archive.

If false or not specified, `cataloged_status` and `actions` fields will not
be included in the response data.

**Type**: Boolean
**Default**: false | | `forensic` | (Optional) Show only archives with forensic data or without forensic.

If not specified, archives are listed regardless of forensic data.

**Type**: Boolean | | `includePrePatchManagement` | (Optional) Include pre-patch management status of archive.

If false or not specified, the `pre_patch_management` field will not be included in the response data.

**Type**: Boolean
**Default**: false | | `prePatchManagementOnly` | (Optional) Show only archives with at least one backup which was made before patch management.

If false or not specified, archives are listed regardless of this filter.

**Type**: Boolean
**Default**: false | | `includeMalwareFound` | (Optional) Include malware assessment result of backups in the archive.

If false or not specified, the `malware_found` field will not be included in the response data.

**Type**: Boolean
**Default**: false | | `malwareFound` | (Optional) Show only archives with backups that have the specified malware status.

Possible malware statuses:

* notScanned - No backups were scanned in the archive.
* clean - Backups that don't contain malware.
* malware - Backup that contain malware.

**Type**: Array of String
**Array type description:**
**Type**: String
**Allowed values**:
- `notScanned`
- `clean`
- `malware` | | `includeOrphanage` | (Optional) Include orphanage status of archive.

If false or not specified, the `orphanage` object will not be included in the response data.

**Type**: Boolean
**Default**: false | | `orphanage.status` | (Optional) Filter archives by orphanage status.

* NONE - Not orphaned
* NO_POLICY - Orphaned due to missing policy
* NO_RESOURCE - Orphaned due to missing resource
If not specified, archives are listed regardless of their orphanage status.

**Type**: Array of String
**Array type description:**
**Type**: String
**Allowed values**:
- `NONE`
- `NO_POLICY`
- `NO_RESOURCE` | | `fromDate` | (Optional) Filters archives by the last updated date and time that is greater or equal to the given date and time.

**Type**: DateTime | | `toDate` | (Optional) Filters archives by the last updated date and time that is less than or equal to the given date and time.

**Type**: DateTime | | `includeActions` | (Optional) Calculate and include possible actions in the response.

**Type**: Boolean | | `targetAgentId` | (Optional) Select target agent to calculate actions.

**Type**: String
**Format**: uuid | | `before` | (Optional) Base64-encoded token obtained from the previous response.
Points to the end of the page.

**Type**: String | | `after` | (Optional) Base64-encoded token obtained from the previous response.
Points to the start of the page.

**Type**: String | | `offset` | (Optional) The number of elements to skip before beginning to return elements.

**Type**: Integer
**Default**: 0 | | `limit` | (Optional) Limit the number of elements to return in one page.

**Type**: Integer
**Maximum**: 1000
**Default**: 100 | | `count` | (Optional) Show total count in the response.

**Type**: Boolean
**Default**: false | | `order` | (Optional) An ordering filter that orders the results by value of the specified properties.
Property in inner object can be specified using dot, e.g. orphanage.status.

Available operators:

* `asc` - ascending
* `desc` - descending

**Type**: String | #### Responses | Code | Description | |------|-------------| | `200` | The request was successful. | ### DELETE /vaults/{vaultID}/archives Deletes specified archives from the vault. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `archiveId` | (Required) ID of archive.

**Type**: Array of String
**Array type description:**
Universally unique identifier.

**Type**: String
**Format**: uuid | | `changeTag` | (Required) Tag for run tasks.

**Type**: String | | `clusterId` | (Optional) Limit affinity to this cluster.

**Type**: String
**Format**: uuid | | `locationCredentialsId` | (Optional) ID of credentials to access vault.

**Type**: String | | `targetAgentId` | (Optional) ID of the agent to execute the task.

**Type**: String | #### Responses | Code | Description | |------|-------------| | `200` | List of task IDs created. | | `500` | Internal error occurred. | | `400` | Invalid request. | ### POST /vaults/{vaultID}/archives/refresh Sets an agent task to refresh specified vault archives. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `archive_ids` | **Type**: Array of String
**Array type description:**
Universally unique identifier.

**Type**: String
**Format**: uuid | | `level` | Refresh level.

**Type**: String
**Allowed values**:
- `archive`
- `backup`
- `backup_content` | | `task_tag` | Tag that identifies the task.

**Type**: String | | `include_immutable` | If true, shows deleted immutable backups. False otherwise.

**Type**: Boolean | | `target_agent_id` | Universally unique identifier.

**Type**: String
**Format**: uuid | | `location_credentials_id` | Credentials ID of location credentials.

**Type**: String | | `archive_credentials_id` | Credentials ID of archive password.

**Type**: String | **Example**: ```json { "archive_credentials_id": "bdc753ee-56ec-2905-d2b4-cd469da1a49f@archive!383", "location_credentials_id": "bdc753ee-56ec-2905-d2b4-cd469da1a49f@location!383", "target_agent_id": "B489DE2E-3AC0-421F-BB07-6A28880896B5", "include_immutable": false, "archive_ids": [ "bdc753ee-56ec-2905-d2b4-cd469da1a49f" ], "level": "backup" } ``` #### Responses | Code | Description | |------|-------------| | `200` | List of task IDs created. | | `500` | Internal error occurred. | | `400` | Invalid request. | ### GET /vaults/{vaultID}/archives/{archiveID}/backups/{backupID} Fetches a backup from the vault archive. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `showDeleted` | (Optional) A flag that specifies if the backup must be returned:

* 1 - All backups belonging to alive, deleted or immutable archives are taken into account.
* 2 - (Default) Only backups belonging to alive or immutable are returned.
* 3 - Only backup belonging to deleted archives are returned.
* 0 - Backups belonging to deleted or immutable archives are not returned.

**Type**: Integer
**Allowed values**:
- `0`
- `1`
- `2`
- `3` | | `embed` | (Optional) An array of field names to include in the response.

Each value represents the name of the extension field to be included in the base response.

**Type**: Array of String
**Array type description:**
**Type**: String
**Allowed values**:
- `validation_status`
- `automated_test_failover_validation_status` | #### Responses | Code | Description | |------|-------------| | `200` | The request was successful. | | `404` | The backup not found or excluded by showDeleted parameter. | | `500` | Internal error occurred. | | `400` | Invalid request. | ### PUT /vaults/{vaultID}/archives/{archiveID}/backups/{backupID}/validation_status Sets the validation status for backup in the vault archive. Writes the result of backup validation plan. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `checksum_validation` | Value of backup validation status.

**Type**: String
**Allowed values**:
- `SUCCESS`
- `FAILURE`
- `CANCELLED` | | `vm_heartbeat_validation` | Value of backup validation status.

**Type**: String
**Allowed values**:
- `SUCCESS`
- `FAILURE`
- `CANCELLED` | | `screenshot_validation` | Value of backup validation status.

**Type**: String
**Allowed values**:
- `SUCCESS`
- `FAILURE`
- `CANCELLED` | | `screenshot_full_url` | URL to screenshot file (this is an optional unsigned URL to S3 storage).

**Type**: String | | `screenshot_preview_url` | URL to screenshot preview file (this is an optional unsigned URL to S3 storage).

**Type**: String | **Example**: ```json { "checksum_validation": "SUCCESS", "vm_heartbeat_validation": "SUCCESS", "screenshot_validation": "SUCCESS", "screenshot_full_url": "", "screenshot_preview_url": "" } ``` #### Responses | Code | Description | |------|-------------| | `200` | The validation status for backup was updated successfully. | | `500` | Internal error occurred. | | `400` | Invalid request. | ### GET /vaults/{vaultID}/archives/{archiveID}/backups/{backupID}/validation_status/screenshot_full Fetches the validated full screenshot of a backup in the vault archive. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters #### Responses | Code | Description | |------|-------------| | `303` | Redirect to full screenshot download link. | | `404` | The backup not found or no screenshots for the backup. | | `500` | Internal error occurred. | ### GET /vaults/{vaultID}/archives/{archiveID}/backups/{backupID}/validation_status/screenshot_preview Fetches the validated screenshot preview of a backup in the vault archive. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters #### Responses | Code | Description | |------|-------------| | `303` | Redirect to screenshot preview download link. | | `404` | The backup not found or no screenshots for the backup. | | `500` | Internal error occurred. | ### PUT /vaults/{vaultID}/archives/{archiveID}/backups/{backupID}/automated_test_failover_validation_status Adds Automated Test Failover Validation (ATF) status for backup. Write result of backup validation plan. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `completed_at` | Date and time in RFC 3339 format when Automated Test Failover validation of the Backup was completed. Input timezone is removed by conversion to UTC.

**Type**: DateTime
**Format**: date-time | | `overall_status` | Value of backup validation status.

**Type**: String
**Allowed values**:
- `SUCCESS`
- `FAILURE`
- `CANCELLED` | | `started_at` | Date and time in RFC 3339 format when Automated Test Failover validation of the Backup was started. Input timezone is removed by conversion to UTC.

**Type**: String | | `screenshot_full_url` | URL to Vault Manager which redirects to signed S3 storage URL with screenshot file produced during backup validation by Disaster Recovery Automated Test Failover feature (optional).

**Type**: String | | `screenshot_preview_url` | URL to Vault Manager which redirects to signed S3 storage URL with screenshot preview file produced during backup validation by Disaster Recovery Automated Test Failover feature (optional).

**Type**: String | | `task_id` | The ID of the Task Manager task which the Automated Test Failover process was started from.

**Type**: String | **Example**: ```json { "completed_at": "1970-01-01T00:00:00.000Z", "overall_status": "SUCCESS", "started_at": "", "screenshot_full_url": "", "screenshot_preview_url": "", "task_id": "" } ``` #### Responses | Code | Description | |------|-------------| | `204` | The Automated Test Failover Validation status for backup was added successfully. | | `500` | Internal error occurred. | | `400` | Invalid request. | ### GET /vaults/{vaultID}/archives/{archiveID}/backups/{backupID}/automated_test_failover_validation_status/screenshot_full Fetches validated full screenshot for backup. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters #### Responses | Code | Description | |------|-------------| | `303` | Redirect to full automated test failover screenshot download link. | | `404` | The backup not found or no screenshots for the backup. | | `500` | Internal error occurred. | ### GET /vaults/{vaultID}/archives/{archiveID}/backups/{backupID}/automated_test_failover_validation_status/screenshot_preview Fetches validated screenshot preview for backup. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters #### Responses | Code | Description | |------|-------------| | `303` | Redirect to automated test failover screenshot preview download link. | | `404` | The backup not found or no screenshots for the backup. | | `500` | Internal error occurred. | ### GET /vaults/{vaultID}/archives/{archiveID}/backup_timestamps Fetches a list of timestamps when the backups were made. By default, groups backups by 24 hours. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `resourceId` | (Optional) Show timestamps only for specified resource.

**Type**: String
**Format**: uuid | | `created` | (Optional) Show backups created only within specified time range.

**Type**: Array of String
**Array type description:**
A filter by date and time in RFC 3339 format with the support
for comparison operators.

Available operators:

* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals

**Type**: String | | `granularity` | (Optional) Granularity interval of grouped backups in seconds.

**Type**: Integer
**Default**: 86400 | | `tzOffset` | (Optional) Timezone difference from current timezone to UTC in minutes.

**Type**: Integer
**Default**: 0 | | `showDeleted` | (Optional) A flag that specifies what kind of deleted backups should participate in timestamps calculation:

* 1 - All deleted backups are participating in calculation.
* 2 - Only deleted backups marked as immutable are participating in calculation.
* 0 - No deleted backups are participating in calculation.

**Type**: Integer
**Allowed values**:
- `0`
- `1`
- `2` | | `before` | (Optional) Base64-encoded token obtained from the previous response.
Points to the end of the page.

**Type**: String | | `after` | (Optional) Base64-encoded token obtained from the previous response.
Points to the start of the page.

**Type**: String | | `offset` | (Optional) The number of elements to skip before beginning to return elements.

**Type**: Integer
**Default**: 0 | | `limit` | (Optional) Limit the number of elements to return in one page.

**Type**: Integer
**Maximum**: 1000
**Default**: 100 | | `count` | (Optional) Show total count in the response.

**Type**: Boolean
**Default**: false | #### Responses | Code | Description | |------|-------------| | `200` | The request was successful. | | `500` | Internal error occurred. | | `400` | Invalid request. | ### GET /vaults/{vaultID}/archives/{archiveID}/backups Fetches a list of vault archive backups. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` * `vault_manager::core_restore` * `vault_manager::c2c_restore` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `resourceId` | (Optional) Show only backups for specified resources.

**Type**: Array of String
**Array type description:**
Universally unique identifier.

**Type**: String
**Format**: uuid | | `changeTag` | (Optional) Show only backups for specified change tag.

**Type**: String | | `showDeleted` | (Optional) A flag that specifies what should be added to the list of returned backups:

* 1 - All deleted backups are added to the list of archives.
* 2 - Only deleted backups marked as immutable are added to the list of backups.
* 0 - No deleted backups are added to the list of backups.

**Type**: Integer
**Allowed values**:
- `0`
- `1`
- `2` | | `embed` | (Optional) An array of field names to include in the response.

Each value represents the name of the extension field to be included in the base response.

**Type**: Array of String
**Array type description:**
**Type**: String
**Allowed values**:
- `archive`
- `automated_test_failover_validation_status`
- `validation_status`
- `vault` | | `created` | (Optional) Show only backups created within specified time range.

**Type**: Array of String
**Array type description:**
A filter by date and time in RFC 3339 format with the support
for comparison operators.

Available operators:

* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals

**Type**: String | | `protectedByPassword` | (Optional) Show only backups in protected by password or unprotected by password archives.

If not specified, backups are listed regardless of their password protection status.

**Type**: Boolean | | `backupType` | (Optional) Show only backups of specified types.

**Type**: Array of String
**Array type description:**
Backup type.

**Type**: String
**Allowed values**:
- `full`
- `incremental`
- `differential`
- `unknown`
- `cdp` | | `tapeId` | (Optional) Show only backups for specified tapes.

**Type**: Array of String
**Array type description:**
Universally unique identifier.

**Type**: String
**Format**: uuid | | `triggeredBy` | (Optional) Show a list of Backups triggered by specified reason.

**Type**: Array of String
**Array type description:**
Reason why Backup was created.

**Type**: String
**Allowed values**:
- `patch_management` | | `avScanningDate` | (Optional) Show only backups scanned within the specified time range OR never scanned backups if "none" is specified.

**Type**: Array of String
**Array type description:**
A filter by date and time in RFC 3339 format with the support
for comparison operators.

Available operators:

* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals

**Type**: String | | `vulnerabilityAssessmentStatus` | (Optional) Show only backups with specified Vulnerability Assessment Result statuses.

**Type**: Array of String
**Array type description:**
**Type**: String
**Allowed values**:
- `notScanned`
- `clean`
- `vulnerable` | | `malwareAssessmentStatus` | (Optional) Show only backups with specified Malware Assessment Result statuses.

**Type**: Array of String
**Array type description:**
**Type**: String
**Allowed values**:
- `notScanned`
- `clean`
- `malware` | | `includeActions` | (Optional) Calculate and include possible actions in the response.

**Type**: Boolean | | `targetAgentId` | (Optional) Select target agent to calculate actions.

**Type**: String
**Format**: uuid | | `before` | (Optional) Base64-encoded token obtained from the previous response.
Points to the end of the page.

**Type**: String | | `after` | (Optional) Base64-encoded token obtained from the previous response.
Points to the start of the page.

**Type**: String | | `offset` | (Optional) The number of elements to skip before beginning to return elements.

**Type**: Integer
**Default**: 0 | | `limit` | (Optional) Limit the number of elements to return in one page.

**Type**: Integer
**Maximum**: 1000
**Default**: 100 | | `count` | (Optional) Show total count in the response.

**Type**: Boolean
**Default**: false | | `order` | (Optional) An ordering filter that orders the results by value of the specified properties.
Property in inner object can be specified using dot, e.g. orphanage.status.

Available operators:

* `asc` - ascending
* `desc` - descending

**Type**: String | #### Responses | Code | Description | |------|-------------| | `200` | The request was successful. | ### DELETE /vaults/{vaultID}/archives/{archiveID}/backups Deletes vault archive backups. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `backupId` | (Required) IDs of backups.

**Type**: Array of String
**Array type description:**
Universally unique identifier.

**Type**: String
**Format**: uuid | | `tenantId` | (Optional) Tenant ID to reduce the scope.

**Type**: any | | `changeTag` | (Required) Tag for run tasks.

**Type**: String | #### Responses | Code | Description | |------|-------------| | `200` | List of task IDs created. | | `500` | Internal error occurred. | | `400` | Invalid request. | ### POST /vaults/{vaultID}/archives/{archiveID}/backups/delete Sets the backup deletion tasks to appropriate agent. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `backupID` | (Optional) Backup ID to delete.

**Type**: Array of String
**Array type description:**
Universally unique identifier.

**Type**: String
**Format**: uuid | | `tenantId` | (Optional) Tenant ID to reduce the scope.

**Type**: any | | `changeTag` | (Optional) Tag for run tasks.

**Type**: String | ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `password` | Archive password.

**Type**: String | | `location_credentials_id` | Credentials ID of location credentials.

**Type**: String | | `archive_credentials_id` | Credentials ID of archive password.

**Type**: String | | `target_agent_id` | Universally unique identifier.

**Type**: String
**Format**: uuid | **Example**: ```json { "password": "", "location_credentials_id": "", "archive_credentials_id": "", "target_agent_id": "" } ``` #### Responses | Code | Description | |------|-------------| | `200` | List of task IDs created. | ### GET /vaults/{vaultID}/archives/{archiveID}/replication_status Fetches archive geo-replication status. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters #### Responses | Code | Description | |------|-------------| | `200` | The request was successful. | ### GET /vaults/{vaultID}/config Fetches the vault configuration. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters #### Responses | Code | Description | |------|-------------| | `200` | - | | `500` | Internal error occurred. | | `400` | Invalid request. | | `404` | Resource not found. | ### PATCH /vaults/{vaultID}/config Updates the vault configuration. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `name` | Name of the vault.

**Type**: String | | `access_address` | Hostname or IP address of Acronis Storage Node to create vault on.

**Type**: String | | `hostname` | Hostname of local vault.

**Type**: String
**Format**: hostname | | `settings` | **Type**: Object | **Example**: ```json { "name": "Vault1", "access_address": "10.25.60.81", "hostname": "MY-PC", "settings": { "comment": "comment here", "catalog_uri": "E:\\test1\\" } } ``` #### Responses | Code | Description | |------|-------------| | `200` | Success in case of Acronis Storage Node (ASN) vault. | | `204` | Success in case of not Acronis Storage Node (ASN) vault. | | `404` | The vault is not found. | | `409` | Update of the vault has failed because its last seen time is in the past. | | `500` | Any other error. | ### GET /vaults/{vaultID}/stats Fetches the vault statistics. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters #### Responses | Code | Description | |------|-------------| | `200` | - | | `500` | Internal error occurred. | | `400` | Invalid request. | | `404` | Resource not found. | ### POST /vaults/{vaultID}/stats Updates the vault statistics. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `archive_count` | Number of archives in the vault.

**Type**: Integer | | `backup_count` | Number of backups in the vault.

**Type**: Integer | | `backed_up_data_size` | Size of data stored in vault's backups.

**Type**: Integer | | `original_data_size` | Original size of all data vault holds.

**Type**: Integer | | `occupied_data_size` | Amount of space that vault takes up on storage.

**Type**: Integer | | `immutable_size` | Amount of space that vault takes up on immutable storage.

**Type**: Integer | | `free_space` | Amount of space left on storage where vault is.

**Type**: Integer | | `total_space` | Total about of space on storage where vault is.

**Type**: Integer | | `logical_archive_size` | Logical archive size sum.

**Type**: Integer | | `deduplication_stats` | **Type**: Object | **Example**: ```json { "archive_count": 0, "backup_count": 0, "backed_up_data_size": 0, "original_data_size": 0, "occupied_data_size": 0, "immutable_size": 0, "free_space": 0, "total_space": 0, "logical_archive_size": 0, "deduplication_stats": { "occupied_deduplication_db_size": 0, "free_deduplication_db_size": 0, "occupied_deduplication_ds_size": 0, "occupied_deduplication_ram": 0, "free_deduplication_ram": 0, "deduplication_index_usage": "", "data_to_index_size": 0 } } ``` #### Responses | Code | Description | |------|-------------| | `204` | Vault statistics were updated successfully. | ### GET /vaults/{vaultID}/agents Fetches a list of agents managing the vault. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters #### Responses | Code | Description | |------|-------------| | `200` | - | ### POST /vaults/{vaultID}/change_password Available in on-premises version only. Change password for the encrypted vault. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `session_id` | Universally unique identifier.

**Type**: String
**Format**: uuid | | `uri_old` | URI for old password.

**Type**: String | | `uri_new` | URI for new password.

**Type**: String | **Example**: ```json { "session_id": "", "uri_old": "", "uri_new": "" } ``` #### Responses | Code | Description | |------|-------------| | `204` | The vault password was updated successfully. | ### POST /vaults/{vaultID}/change_credentials Available in on-premises version only. Change credentials for the managed vault. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `session_id` | Universally unique identifier.

**Type**: String
**Format**: uuid | | `uri` | URI for credentials.

**Type**: String | **Example**: ```json { "session_id": "", "uri": "" } ``` #### Responses | Code | Description | |------|-------------| | `204` | The vault credentials were changed successfully. | ### POST /vaults/{vaultID}/replace_vault_password Available in on-premises version only. Replaces the password of an encrypted vault. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `session_id` | Universally unique identifier.

**Type**: String
**Format**: uuid | | `uri` | URI for password.

**Type**: String | **Example**: ```json { "session_id": "", "uri": "" } ``` #### Responses | Code | Description | |------|-------------| | `204` | The vault password was replaced successfully. | ### GET /sync/archives Fetches the archives sync information. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `agentId` | (Optional) Filter archives by agent ID.

**Type**: String
**Format**: uuid | | `sourceUsnGt` | (Optional) Show only archives with source Update Sequence Number (USN) greater than requested.

**Type**: Integer | | `limit` | (Required) **Type**: Integer | | `order` | (Optional) An ordering filter that orders the results by value of the specified properties.
Property in inner object can be specified using dot, e.g. orphanage.status.

Available operators:

* `asc` - ascending
* `desc` - descending

**Type**: String | #### Responses | Code | Description | |------|-------------| | `200` | - | ### POST /sync/archives Updates a batch of archives. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `vault` | Properties with the request-wide effect when `full_resync` or `last_batch` is true. Ignored otherwise.

**Type**: Object | | `add` | List of archives that should be created.

**Type**: Array of any
**Array type description:**
**Type**: any | | `delete` | Specifies archives that should be deleted.

**Type**: Object | | `full_resync` | Specifies the full re-sync mode. If true, `add` array will be treated like a full and only full list of vault archives. Other archives will be marked as deletable and if not added again they will be deleted at the end of the session.

**Type**: Boolean | | `last_batch` | Specifies that it is the last batch. If true, the session started with full_resync for the same vault will be closed, so non-added archives will be deleted.

**Type**: Boolean | **Example**: ```json { "vault": { "id": "", "last_seen_at": "" }, "add": [ { "id": "", "name": "", "vault_id": {}, "legacy_id": "", "attributes": {}, "size": 0, "compressed_data_size": 0, "data_size": 0, "original_data_size": 0, "type": "unknown", "format": "11", "created": "1970-01-01T00:00:00.000Z", "updated": "1970-01-01T00:00:00.000Z", "last_backup_created": "1970-01-01T00:00:00.000Z", "resource_type": "", "protected_by_password": true, "encryption_algorithm": "none", "deleted": true, "file_name": "", "tenant_id": {}, "tenant_locator": "", "agent_id": "", "source_key": "", "source_usn": 0, "actions": [ "" ], "agent_name": "", "centralized_plan_id": "", "backup_plan_id": "", "backup_plan_name": "", "description": "", "display_name": "", "owner_id": "", "owner_name": "", "resource_id": "", "resource_ids": [ "" ], "resource_name": "", "consistent": true, "stats": { "first_backup": "", "last_backup_size": 0, "last_backup_path": "", "backup_count": 0 }, "marked_for_deletion": true, "pds_status": "archiveNotReady", "search_index_size": 0, "resource_path": "", "last_seen_at": "1970-01-01T00:00:00.000Z", "cataloged_status": "notIndexed", "forensic": true, "pre_patch_management": true, "malware_found": true, "logical_size": 0, "immutable_size": 0, "deleted_immutable": true, "orphanage": { "status": "NONE" }, "archive_id": {} } ], "delete": { "change_tag": "", "ids": [ { "vault_id": "", "archive_id": "" } ] }, "full_resync": true, "last_batch": true } ``` #### Responses | Code | Description | |------|-------------| | `200` | Multiple operations have taken over archives with successful status
for each archive can be viewed in the body of the response. | | `207` | Multiple operations have taken over archives with different status
for each archive can be viewed in the body of the response. | | `404` | The involved archives/vaults have not been found. | ### GET /sync/backups Fetches the backups sync information. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `agentId` | (Optional) Filter archives by agent ID.

**Type**: String
**Format**: uuid | | `sourceUsnGt` | (Optional) Show only archives with source Update Sequence Number (USN) greater than requested.

**Type**: Integer | | `limit` | (Required) **Type**: Integer | | `order` | (Optional) An ordering filter that orders the results by value of the specified properties.
Property in inner object can be specified using dot, e.g. orphanage.status.

Available operators:

* `asc` - ascending
* `desc` - descending

**Type**: String | #### Responses | Code | Description | |------|-------------| | `200` | - | ### POST /sync/backups Updates a batch of backups. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `add` | List of backups that should be created.

**Type**: Array of any
**Array type description:**
**Type**: any | | `patch` | List of backups that should be patched. For non-existent backups, errors will be returned.

**Type**: Array of any
**Array type description:**
**Type**: any | | `delete` | Specifies backups that should be deleted.

**Type**: Object | | `full_resync` | Specifies the full re-sync mode. If true, `add` array will be treated like a full and only full list of archive backups.

**Type**: Boolean | | `vault_id` | Universally unique identifier.

**Type**: String
**Format**: uuid | | `archive_id` | Universally unique identifier.

**Type**: String
**Format**: uuid | **Example**: ```json { "add": [ { "vault_id": {}, "archive_id": {}, "backup_id": {}, "created": {}, "size": {}, "deduplicated_size": 0, "backed_up_data_size": 0, "original_data_size": 0, "item_counters": { "items_added": 0, "items_changed": 0, "items_removed": 0 }, "deleted": true, "tenant_id": {}, "tenant_locator": "", "resource_ids": [ "" ], "catalog_status": {}, "notarized": true, "attributes": {}, "vault": { "id": "", "name": "", "uri": "", "version": "", "managing_agent_id": "", "storage_type": "unknown", "organizational": true, "settings": {}, "storage_id": "", "status": {}, "tenant_id": {}, "tenant_locator": "", "access_address": "", "compacting_plan_id": "", "hostname": "", "consistent": true, "last_seen_at": "1970-01-01T00:00:00.000Z", "is_full_config": true }, "archive": { "id": "", "name": "", "vault_id": "", "legacy_id": "", "attributes": {}, "size": 0, "compressed_data_size": 0, "data_size": 0, "original_data_size": 0, "type": "unknown", "format": "11", "created": "1970-01-01T00:00:00.000Z", "updated": "1970-01-01T00:00:00.000Z", "last_backup_created": "1970-01-01T00:00:00.000Z", "resource_type": "", "protected_by_password": true, "encryption_algorithm": "none", "deleted": true, "file_name": "", "tenant_id": {}, "tenant_locator": "", "agent_id": "", "source_key": "", "source_usn": 0, "actions": [ "" ], "agent_name": "", "centralized_plan_id": "", "backup_plan_id": "", "backup_plan_name": "", "description": "", "display_name": "", "owner_id": "", "owner_name": "", "resource_id": "", "resource_ids": [ "" ], "resource_name": "", "consistent": true, "stats": { "first_backup": "", "last_backup_size": 0, "last_backup_path": "", "backup_count": 0 }, "marked_for_deletion": true, "pds_status": "archiveNotReady", "search_index_size": 0, "resource_path": "", "last_seen_at": "1970-01-01T00:00:00.000Z", "cataloged_status": "notIndexed", "forensic": true, "pre_patch_management": true, "malware_found": true, "logical_size": 0, "immutable_size": 0, "deleted_immutable": true, "orphanage": { "status": "NONE" } }, "disks": [ { "device_model": "", "name": "", "size": 0, "volumes": [ { "free_space": 0, "is_bootable": true, "is_system": true, "name": "", "size": 0, "mount_strid": "" } ] } ], "dynamic_volumes": [ { "free_space": 0, "is_bootable": true, "is_system": true, "name": "", "size": 0, "mount_strid": "" } ], "source_key": "", "source_usn": 0, "actions": [ "" ], "last_seen_at": "1970-01-01T00:00:00.000Z", "change_tag": "", "failover_check_info": { "error": { "code": "", "domain": "" }, "is_critical_error": true }, "triggered_by": "patch_management", "av_scanning_date": "1970-01-01T00:00:00.000Z", "vulnerability_assessment_result": 0, "malware_assessment_result": 0, "type": "full", "tapes": [ "" ], "tapes_for_restore": [ "" ], "deleted_immutable": true, "validation_status": { "overall_status": "SUCCESS", "checksum_validation": "SUCCESS", "vm_heartbeat_validation": "SUCCESS", "screenshot_validation": "SUCCESS", "screenshot_full_url": "", "screenshot_preview_url": "" }, "automated_test_failover_validation_status": { "completed_at": "1970-01-01T00:00:00.000Z", "overall_status": "SUCCESS", "started_at": "", "screenshot_full_url": "", "screenshot_preview_url": "", "task_id": "" }, "created_in_network_isolation": true, "archive_credentials_id": "" } ], "patch": [ { "vault_id": {}, "archive_id": {}, "backup_id": {} } ], "delete": { "change_tag": "", "ids": [ { "vault_id": "", "archive_id": "", "backup_id": "", "tenant_id": {}, "archive_credentials_id": "" } ] }, "full_resync": true, "vault_id": "", "archive_id": "" } ``` #### Responses | Code | Description | |------|-------------| | `200` | Multiple operations have taken over backups with successful status for each backup
can be viewed in the body of the response. | | `207` | Multiple operations have taken over backups with different status for each backup
can be viewed in the body of the response. | | `404` | The involved archives/vaults/backups have not been found. | ### GET /sync/vaults Fetches the vaults sync information. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `managingAgentId` | (Optional) Filter vaults by agent ID.

**Type**: String
**Format**: uuid | | `sourceUsnGt` | (Optional) Show only vaults with source Update Sequence Number (USN) greater than requested.

**Type**: Integer | | `limit` | (Optional) **Type**: Integer | | `before` | (Optional) Base64-encoded token obtained from the previous response.
Points to the end of the page.

**Type**: String | | `order` | (Optional) An ordering filter that orders the results by value of the specified properties.
Property in inner object can be specified using dot, e.g. orphanage.status.

Available operators:

* `asc` - ascending
* `desc` - descending

**Type**: String | #### Responses | Code | Description | |------|-------------| | `200` | - | ### POST /sync/vaults Adds a batch of vaults. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `schema` | **Type**: Array of Object
**Array type description:**
Vault info.

**Type**: Object | **Example**: ```json [ { "config": { "id": "", "name": "", "uri": "", "version": "", "managing_agent_id": "", "storage_type": "unknown", "organizational": true, "settings": {}, "storage_id": "", "status": {}, "tenant_id": {}, "tenant_locator": "", "access_address": "", "compacting_plan_id": "", "hostname": "", "consistent": true, "last_seen_at": "1970-01-01T00:00:00.000Z", "is_full_config": true }, "stats": { "archive_count": 0, "backup_count": 0, "backed_up_data_size": 0, "original_data_size": 0, "occupied_data_size": 0, "immutable_size": 0, "free_space": 0, "total_space": 0, "logical_archive_size": 0, "deduplication_stats": { "occupied_deduplication_db_size": 0, "free_deduplication_db_size": 0, "occupied_deduplication_ds_size": 0, "occupied_deduplication_ram": 0, "free_deduplication_ram": 0, "deduplication_index_usage": "", "data_to_index_size": 0 } }, "agents": [ "" ], "status": {} } ] ``` #### Responses | Code | Description | |------|-------------| | `201` | - | ### PUT /sync/vaults/{vaultID} Registers or updates a vault. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `config` | Vault description.

**Type**: Object | | `stats` | Vault statistics.

**Type**: Object | | `agents` | **Type**: Array of String
**Array type description:**
Universally unique identifier.

**Type**: String
**Format**: uuid | | `status` | **Type**: Object | **Example**: ```json { "config": { "tenant_locator": "/00000000-0000-0000-0000-000000000000/", "name": "WIN-FBM117GB12I: C:\\\\test\\\\", "managing_agent_id": "45EB1623-FA48-44A6-9C35-17188781ADC5", "uri": "C:/test/", "is_full_config": true, "version": "LOCATION_VERSION_ABR12", "id": "A574AB3E-DB44-2C60-01A9-FB9CFBA89D43", "storage_type": "local_folder", "settings": { "storage_uri": "C:/test/" } }, "stats": { "free_space": 26164383744, "total_space": 42580570112 }, "status": { "status": "ok", "status_error": "{}\\n" }, "agents": [ "45EB1623-FA48-44A6-9C35-17188781ADC5" ] } ``` #### Responses | Code | Description | |------|-------------| | `201` | - | | `500` | Internal error occurred. | | `400` | Invalid request. | | `409` | Conflict on object update. | ### DELETE /sync/vaults/{vaultID} Marks the vault as deleted in the Vault Manager database. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `tenantID` | (Optional) Tenant ID (where the vault will be removed from) to separate the target tenant from the effective one

**Type**: any | #### Responses | Code | Description | |------|-------------| | `204` | The vault was soft deleted successfully. | | `404` | The vault is not found. | | `409` | Update of the vault has failed because its last seen time is in the past. | | `500` | Any other error. | ### POST /sync/vaults/{vaultID}/agents Binds agents to the vault. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `agent_ids` | **Type**: Array of String
**Array type description:**
Universally unique identifier.

**Type**: String
**Format**: uuid | **Example**: ```json { "agent_ids": [ "" ] } ``` #### Responses | Code | Description | |------|-------------| | `200` | - | ### POST /sync/vaults/{vaultID}/index_catalog_status Updates the index catalog status of vault. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `catalog_index_result` | **Type**: Array of Object
**Array type description:**
**Type**: Object | **Example**: ```json { "catalog_index_result": [ { "archive_id": "", "indexed_backup_ids": [ "" ], "is_delete_archive": true } ] } ``` #### Responses | Code | Description | |------|-------------| | `204` | The vault index catalog status was updated successfully. | ### PATCH /sync/vaults/{vaultID}/stats Updates the specified fields of vault stats. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `archive_count` | Number of archives in the vault.

**Type**: Integer | | `backup_count` | Number of backups in the vault.

**Type**: Integer | | `backed_up_data_size` | Size of data stored in vault's backups.

**Type**: Integer | | `original_data_size` | Original size of all data vault holds.

**Type**: Integer | | `occupied_data_size` | Amount of space that vault takes up on storage.

**Type**: Integer | | `immutable_size` | Amount of space that vault takes up on immutable storage.

**Type**: Integer | | `free_space` | Amount of space left on storage where vault is.

**Type**: Integer | | `total_space` | Total about of space on storage where vault is.

**Type**: Integer | | `logical_archive_size` | Logical archive size sum.

**Type**: Integer | | `deduplication_stats` | **Type**: Object | **Example**: ```json { "occupied_data_size": 339214336, "backup_count": 25, "total_space": 500000000000, "backed_up_data_size": 339214336, "archive_count": 2, "immutable_size": 6432517, "free_space": 483221569536, "original_data_size": 53691285504 } ``` #### Responses | Code | Description | |------|-------------| | `200` | - | | `500` | Internal error occurred. | | `400` | Invalid request. | | `404` | Resource not found. | ### PUT /sync/vaults/{vaultID}/archives/{archiveID} Adds an archive to the vault. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `id` | Universally unique identifier.

**Type**: String
**Format**: uuid | | `name` | Name of the archive.

**Type**: String | | `vault_id` | Universally unique identifier.

**Type**: String
**Format**: uuid | | `legacy_id` | ID that is needed for old WCS API support. Don't use it in new services!

**Type**: String | | `attributes` | Any archive-specific attributes.

**Type**: Object | | `size` | Size of the archive in bytes.

**Type**: Integer | | `compressed_data_size` | Sum of compressed data in all slices in bytes. May be larger than `data_size` in case of dedup. Calculated by archive implementation.

**Type**: Integer | | `data_size` | Size of backed up data in all slices of archive in bytes. Calculated by archive implementation.

**Type**: Integer | | `original_data_size` | Size of the data that can be restored from all slices of the archive in bytes. Calculated by archive implementation.

**Type**: Integer | | `type` | Archive type.

**Type**: String
**Allowed values**:
- `unknown`
- `file`
- `image`
- `vss_application`
- `msexchange`
- `msexchange_doc`
- `mssql`
- `oracle`
- `ad`
- `empty` | | `format` | Format of archive.

**Type**: String
**Allowed values**:
- `11`
- `12`
- `alwaysIncremental` | | `created` | Date and time in RFC 3339 format the archive was created.

**Type**: DateTime
**Format**: date-time | | `updated` | Date and time in RFC 3339 format the archive was updated.

**Type**: DateTime
**Format**: date-time | | `last_backup_created` | Date and time in RFC 3339 format the last slice was created.

**Type**: DateTime
**Format**: date-time | | `resource_type` | Type of resource stored in archive (e.g., `machine`, `mssql_server`). Can include additional resource type (e.g., type of VM: `datastore.vmwesx`, `virtual_appliance.mshyperv`).

**Type**: String | | `protected_by_password` | If true, the archive is protected by password. False otherwise.

**Type**: Boolean | | `encryption_algorithm` | Encryption algorithm of the archive.

**Type**: String
**Allowed values**:
- `none`
- `aes_128`
- `aes128`
- `aes_192`
- `aes192`
- `aes_256`
- `aes256`
- `gost` | | `deleted` | If true, the archive is deleted and no longer exists. False otherwise.

**Type**: Boolean | | `file_name` | The archive file name.

**Type**: String | | `tenant_id` | Tenant identifier. Uses numeric identifier in cloud and UUID in on-premises.

**Type**: any | | `tenant_locator` | Locator of the tenant that owns the archive.

**Type**: String | | `agent_id` | Universally unique identifier.

**Type**: String
**Format**: uuid | | `source_key` | Key of archive in DML DB. Used for legacy agents support.

**Type**: String | | `source_usn` | Timestamp of archive in DML DB. Used for legacy agents support.

**Type**: Integer | | `actions` | List of available actions.

**Type**: Array of String
**Array type description:**
**Type**: String | | `agent_name` | Hostname of agent machine.

**Type**: String
**Format**: hostname | | `centralized_plan_id` | Global identifier of the backup plan in accordance to that the archive is created.

**Type**: String | | `backup_plan_id` | ID of the backup plan that created the archive.

**Type**: String | | `backup_plan_name` | Name of the backup plan that created the archive.

**Type**: String | | `description` | User-defined description.

**Type**: String | | `display_name` | Human-readable archive name.

**Type**: String | | `owner_id` | ID of the user (SID for Windows) that owns the archive.

**Type**: String | | `owner_name` | Name of the user that owns the archive.

**Type**: String | | `resource_id` | ID of the resource that stored in the archive.

**Type**: String | | `resource_ids` | List of identifiers of backed up resources.

**Type**: Array of String
**Array type description:**
ID of backed up resource.

**Type**: String | | `resource_name` | Name of the resource that stored in the archive.

**Type**: String | | `consistent` | False if archive content could be outdated and a refresh is required. True otherwise.

**Type**: Boolean | | `stats` | Additional information about slices.

**Type**: Object | | `marked_for_deletion` | True if archive marked as deleted. False otherwise.

**Type**: Boolean | | `pds_status` | State of physical data shipment.

**Type**: String
**Allowed values**:
- `archiveNotReady`
- `archiveInTransit`
- `archiveDelivered` | | `search_index_size` | Size of search index.

**Type**: Integer | | `resource_path` | Path to the backed up resource in a format acceptable by Resource Manager.

**Type**: String | | `last_seen_at` | Last time when the archive was seen.

**Type**: DateTime
**Format**: date-time | | `cataloged_status` | State of archive is cataloged.

**Type**: String
**Allowed values**:
- `notIndexed`
- `partiallyIndexed`
- `indexed` | | `forensic` | True if the archive contains forensic data. False otherwise.

**Type**: Boolean | | `pre_patch_management` | Flag that specifies whether the archive contains at least one backup which was made before patch management. True if there's at least one backup that was made before patch management. False otherwise.

**Type**: Boolean | | `malware_found` | Malware assessment result of backups in the archive. Absent if no backups were scanned. True if at least one backup has malware. False otherwise.

**Type**: Boolean | | `logical_size` | Reflects logical size of archive.

**Type**: Integer | | `immutable_size` | Reflects immutable size of archive.

**Type**: Integer | | `deleted_immutable` | True if the archive is marked as deleted immutable. False otherwise.

**Type**: Boolean | | `orphanage` | Archive orphanage status description.

**Type**: Object | **Example**: ```json { "format": "11", "tenant_locator": "/1/65/", "name": "b2af49a9-f2b3-470b-a827-614bdf817a8e", "vault_id": "00000000-0000-0000-0000-000000000000", "pds_status": "archiveNotReady", "tenant_id": "65", "size": 2254254080, "file_name": "", "source_key": "", "resource_type": "vmwesx", "protected_by_password": false, "cataloged_status": "notIndexed", "last_backup_created": "2017-10-12T08:01:48Z", "attributes": { "original_dataSize": 267268243456, "cluster_name": "", "initial-seeding-verified": "0", "backup_count": 57, "machine_name": "BCA-msk7-7725-failover-c7b3623d-fee9-4025-a068-3a5265d4f906", "resource_name": "", "description": "", "plan_name": "", "owner_id": "security-posix-uid-0", "display_name": "Linux primary - New backup plan", "uri": "avfs:/online?account%3d137%26authProtoVersion%3d1%26computer%3d1%26provider%3dAcronis#arl:/00000000-0000-0000-0000-000000000000/00000000-0000-0000-0000-000000000000/21057332-3588-4363-A0D1-C00B5757593C?archive_name%3db2af49a9-f2b3-470b-a827-614bdf817a8e", "owner_name": "root", "{DD212122-6CA8-4CFE-9CA9-DE586882C979}": "0", "plan_id": "00000000-0000-0000-0000-000000000000", "forIndexing_dataSize": 0, "machine_id": "D7198861-C9EA-4AFC-8C1E-5513E23D8D58", "deduplicated_size": 4531466240, "storage-uri": "avfs:/online?account%3d137%26authProtoVersion%3d1%26computer%3d1%26provider%3dAcronis", "archive-id": "21057332-3588-4363-A0D1-C00B5757593C", "compressed_dataSize": 0, "{EC4C7738-9F4B-4F1C-9ED0-E29CD70C3AED}": "0", "cluster_id": "", "data_size": 4531466240 }, "id": "21057332-3588-4363-a0d1-c00b5757593c", "updated": "0001-01-01T00:00:00Z", "search_index_size": 0, "actions": [ "refresh" ], "source_usn": 0, "type": "image", "agent_id": "bec6091d-de3f-4d5b-a042-22ee65fce812", "deleted": false, "created": "2017-10-04T09:05:21Z" } ``` #### Responses | Code | Description | |------|-------------| | `201` | The archive was successfully added to the vault. | | `500` | Internal error occurred. | | `400` | Invalid request. | | `404` | Resource not found. | ### PATCH /sync/vaults/{vaultID}/archives/{archiveID} Updates an archive in the vault. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `id` | Universally unique identifier.

**Type**: String
**Format**: uuid | | `name` | Name of the archive.

**Type**: String | | `vault_id` | Universally unique identifier.

**Type**: String
**Format**: uuid | | `legacy_id` | ID that is needed for old WCS API support. Don't use it in new services!

**Type**: String | | `attributes` | Any archive-specific attributes.

**Type**: Object | | `size` | Size of the archive in bytes.

**Type**: Integer | | `compressed_data_size` | Sum of compressed data in all slices in bytes. May be larger than `data_size` in case of dedup. Calculated by archive implementation.

**Type**: Integer | | `data_size` | Size of backed up data in all slices of archive in bytes. Calculated by archive implementation.

**Type**: Integer | | `original_data_size` | Size of the data that can be restored from all slices of the archive in bytes. Calculated by archive implementation.

**Type**: Integer | | `type` | Archive type.

**Type**: String
**Allowed values**:
- `unknown`
- `file`
- `image`
- `vss_application`
- `msexchange`
- `msexchange_doc`
- `mssql`
- `oracle`
- `ad`
- `empty` | | `format` | Format of archive.

**Type**: String
**Allowed values**:
- `11`
- `12`
- `alwaysIncremental` | | `created` | Date and time in RFC 3339 format the archive was created.

**Type**: DateTime
**Format**: date-time | | `updated` | Date and time in RFC 3339 format the archive was updated.

**Type**: DateTime
**Format**: date-time | | `last_backup_created` | Date and time in RFC 3339 format the last slice was created.

**Type**: DateTime
**Format**: date-time | | `resource_type` | Type of resource stored in archive (e.g., `machine`, `mssql_server`). Can include additional resource type (e.g., type of VM: `datastore.vmwesx`, `virtual_appliance.mshyperv`).

**Type**: String | | `protected_by_password` | If true, the archive is protected by password. False otherwise.

**Type**: Boolean | | `encryption_algorithm` | Encryption algorithm of the archive.

**Type**: String
**Allowed values**:
- `none`
- `aes_128`
- `aes128`
- `aes_192`
- `aes192`
- `aes_256`
- `aes256`
- `gost` | | `deleted` | If true, the archive is deleted and no longer exists. False otherwise.

**Type**: Boolean | | `file_name` | The archive file name.

**Type**: String | | `tenant_id` | Tenant identifier. Uses numeric identifier in cloud and UUID in on-premises.

**Type**: any | | `tenant_locator` | Locator of the tenant that owns the archive.

**Type**: String | | `agent_id` | Universally unique identifier.

**Type**: String
**Format**: uuid | | `source_key` | Key of archive in DML DB. Used for legacy agents support.

**Type**: String | | `source_usn` | Timestamp of archive in DML DB. Used for legacy agents support.

**Type**: Integer | | `actions` | List of available actions.

**Type**: Array of String
**Array type description:**
**Type**: String | | `agent_name` | Hostname of agent machine.

**Type**: String
**Format**: hostname | | `centralized_plan_id` | Global identifier of the backup plan in accordance to that the archive is created.

**Type**: String | | `backup_plan_id` | ID of the backup plan that created the archive.

**Type**: String | | `backup_plan_name` | Name of the backup plan that created the archive.

**Type**: String | | `description` | User-defined description.

**Type**: String | | `display_name` | Human-readable archive name.

**Type**: String | | `owner_id` | ID of the user (SID for Windows) that owns the archive.

**Type**: String | | `owner_name` | Name of the user that owns the archive.

**Type**: String | | `resource_id` | ID of the resource that stored in the archive.

**Type**: String | | `resource_ids` | List of identifiers of backed up resources.

**Type**: Array of String
**Array type description:**
ID of backed up resource.

**Type**: String | | `resource_name` | Name of the resource that stored in the archive.

**Type**: String | | `consistent` | False if archive content could be outdated and a refresh is required. True otherwise.

**Type**: Boolean | | `stats` | Additional information about slices.

**Type**: Object | | `marked_for_deletion` | True if archive marked as deleted. False otherwise.

**Type**: Boolean | | `pds_status` | State of physical data shipment.

**Type**: String
**Allowed values**:
- `archiveNotReady`
- `archiveInTransit`
- `archiveDelivered` | | `search_index_size` | Size of search index.

**Type**: Integer | | `resource_path` | Path to the backed up resource in a format acceptable by Resource Manager.

**Type**: String | | `last_seen_at` | Last time when the archive was seen.

**Type**: DateTime
**Format**: date-time | | `cataloged_status` | State of archive is cataloged.

**Type**: String
**Allowed values**:
- `notIndexed`
- `partiallyIndexed`
- `indexed` | | `forensic` | True if the archive contains forensic data. False otherwise.

**Type**: Boolean | | `pre_patch_management` | Flag that specifies whether the archive contains at least one backup which was made before patch management. True if there's at least one backup that was made before patch management. False otherwise.

**Type**: Boolean | | `malware_found` | Malware assessment result of backups in the archive. Absent if no backups were scanned. True if at least one backup has malware. False otherwise.

**Type**: Boolean | | `logical_size` | Reflects logical size of archive.

**Type**: Integer | | `immutable_size` | Reflects immutable size of archive.

**Type**: Integer | | `deleted_immutable` | True if the archive is marked as deleted immutable. False otherwise.

**Type**: Boolean | | `orphanage` | Archive orphanage status description.

**Type**: Object | **Example**: ```json { "format": "11", "tenant_locator": "/1/65/", "name": "b2af49a9-f2b3-470b-a827-614bdf817a8e", "vault_id": "00000000-0000-0000-0000-000000000000", "pds_status": "archiveNotReady", "tenant_id": "65", "size": 2254254080, "file_name": "", "source_key": "", "resource_type": "vmwesx", "protected_by_password": false, "cataloged_status": "notIndexed", "last_backup_created": "2017-10-12T08:01:48Z", "attributes": { "original_dataSize": 267268243456, "cluster_name": "", "initial-seeding-verified": "0", "backup_count": 57, "machine_name": "BCA-msk7-7725-failover-c7b3623d-fee9-4025-a068-3a5265d4f906", "resource_name": "", "description": "", "plan_name": "", "owner_id": "security-posix-uid-0", "display_name": "Linux primary - New backup plan", "uri": "avfs:/online?account%3d137%26authProtoVersion%3d1%26computer%3d1%26provider%3dAcronis#arl:/00000000-0000-0000-0000-000000000000/00000000-0000-0000-0000-000000000000/21057332-3588-4363-A0D1-C00B5757593C?archive_name%3db2af49a9-f2b3-470b-a827-614bdf817a8e", "owner_name": "root", "{DD212122-6CA8-4CFE-9CA9-DE586882C979}": "0", "plan_id": "00000000-0000-0000-0000-000000000000", "forIndexing_dataSize": 0, "machine_id": "D7198861-C9EA-4AFC-8C1E-5513E23D8D58", "deduplicated_size": 4531466240, "storage-uri": "avfs:/online?account%3d137%26authProtoVersion%3d1%26computer%3d1%26provider%3dAcronis", "archive-id": "21057332-3588-4363-A0D1-C00B5757593C", "compressed_dataSize": 0, "{EC4C7738-9F4B-4F1C-9ED0-E29CD70C3AED}": "0", "cluster_id": "", "data_size": 4531466240 }, "id": "21057332-3588-4363-a0d1-c00b5757593c", "updated": "0001-01-01T00:00:00Z", "search_index_size": 0, "actions": [ "refresh" ], "source_usn": 0, "type": "image", "agent_id": "bec6091d-de3f-4d5b-a042-22ee65fce812", "deleted": false, "created": "2017-10-04T09:05:21Z" } ``` #### Responses | Code | Description | |------|-------------| | `204` | Ok, no content. | | `500` | Internal error occurred. | | `400` | Invalid request. | | `404` | Resource not found. | ### DELETE /sync/vaults/{vaultID}/archives/{archiveID} Marks the archive as deleted in the Vault Manager database. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `last_seen_at` | (Optional) Date and time in RFC 3339 when the archive was last seen.

**Type**: DateTime | #### Responses | Code | Description | |------|-------------| | `204` | The archive was soft deleted successfully. | | `500` | Internal error occurred. | | `400` | Invalid request. | | `404` | Resource not found. | ### PUT /sync/vaults/{vaultID}/archives/{archiveID}/backups/{backupID} Adds a new backup to the vault archive. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `backup_create_request` | Backup creation request.

**Type**: any | **Example**: ```json { "tenant_locator": "/00000000-0000-0000-0000-000000000000/", "resource_ids": [ "EDD63875-4641-44AA-B1A6-BACB4610AA11" ], "vault_id": "885b7fe4-95ce-71fd-fff5-8de5b3cce9bb", "tenant_id": "00000000-0000-0000-0000-000000000000", "size": 70844416, "notarized": false, "source_key": "", "backup_id": "c2aa0462-dd30-4e08-afce-1bad7cfbf8be", "attributes": { "Kind": "full", "MarkedForDeletion": "0", "SliceMediaIDs": "" }, "archive_id": "1f8867c2-179f-ef34-159f-84279a18174d", "change_tag": "b7a6e9b1-f728-45c6-a778-4b97cb651e57", "actions": [ "restoreDisks", "restoreFiles", "downloadFiles", "deleteByAgent", "validate", "replicate" ], "source_usn": 0, "type": "full", "deleted": false, "created": "2018-02-02T01:40:05Z" } ``` #### Responses | Code | Description | |------|-------------| | `201` | - | | `500` | Internal error occurred. | | `400` | Invalid request. | | `404` | Resource not found. | ### PATCH /sync/vaults/{vaultID}/archives/{archiveID}/backups/{backupID} Updates a backup in the vault archive. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| **Example**: ```json { "vault_id": "885b7fe4-95ce-71fd-fff5-8de5b3cce9bb", "backup_id": "c2aa0462-dd30-4e08-afce-1bad7cfbf8be", "av_scanning_date": "2018-02-02T01:40:05Z", "archive_id": "1f8867c2-179f-ef34-159f-84279a18174d", "type": "cdp" } ``` #### Responses | Code | Description | |------|-------------| | `204` | - | | `500` | Internal error occurred. | | `400` | Invalid request. | | `404` | Resource not found. | ### DELETE /sync/vaults/{vaultID}/archives/{archiveID}/backups/{backupID} Marks the backup as deleted in the Vault Manager database. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `tenantId` | (Optional) Tenant ID to reduce the scope.

**Type**: any | | `changeTag` | (Optional) Change tag.

**Type**: String | | `last_seen_at` | (Optional) Date and time in RFC 3339 when the backup was last seen.

**Type**: DateTime | | `archive_credentials_id` | (Optional) Archive credentials ID.

**Type**: String | #### Responses | Code | Description | |------|-------------| | `204` | The backup was soft deleted successfully. | | `500` | Internal error occurred. | | `400` | Invalid request. | | `404` | Resource not found. | ### DELETE /sync/agents/{agentID} Deletes an agent. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters #### Responses | Code | Description | |------|-------------| | `200` | - | ### POST /sync/storage_nodes Available in on-premises version only. Registers a new storage node. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `tenantID` | (Optional) Tenant ID (where the vault will be removed from) to separate the target tenant from the effective one

**Type**: any | ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `config` | Storage node description.

**Type**: Object | | `vaults` | **Type**: Array of Object
**Array type description:**
Vault info.

**Type**: Object | **Example**: ```json { "config": { "name": "RU-O0000123", "machine_id": "10.250.176.12" } } ``` #### Responses | Code | Description | |------|-------------| | `201` | Storage node was successfully registered. | | `500` | Internal error occurred. | | `400` | Invalid request. | ### GET /stats Fetches statistics for archives that meet the specified conditions. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `resourceID` | (Optional) Get statistics only for Archives that contain backups for specified resources.

**Type**: Array of String
**Array type description:**
Universally unique identifier.

**Type**: String
**Format**: uuid | | `storageType` | (Optional) Get statistics only for Archives in vaults of specified storage types.

**Type**: Array of String
**Array type description:**
Vault storage type.

**Type**: String
**Allowed values**:
- `unknown`
- `local_folder`
- `network_share`
- `ftp`
- `sftp`
- `cd`
- `tape`
- `storage_server`
- `asz`
- `removable_drive`
- `online`
- `nfs_share`
- `esx`
- `local_abgw`
- `microsoft_azure`
- `amazon_s3`
- `s3_compatible` | #### Responses | Code | Description | |------|-------------| | `200` | - | | `500` | Internal error occurred. | | `404` | Resource not found. | | `400` | Invalid request. | ### GET /storage_nodes Available in on-premises version only. Fetches a list of all registered storage nodes. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters #### Responses | Code | Description | |------|-------------| | `200` | - | | `500` | Internal error occurred. | | `400` | Invalid request. | ### POST /storage_nodes Available in on-premises version only. Registers a new storage node. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `host` | IP address of the machine with storage node.

**Type**: String | | `username` | Credentials.

**Type**: String | | `password` | Credentials.

**Type**: String | **Example**: ```json { "host": "", "username": "", "password": "" } ``` #### Responses | Code | Description | |------|-------------| | `201` | Storage node was successfully registered. | | `500` | Internal error occurred. | | `400` | Invalid request. | ### POST /storage_nodes/{storageNodeID}/checkuser Available in on-premises version only. Checks whether the provided user credentials can access the storage node. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `session_id` | Universally unique identifier.

**Type**: String
**Format**: uuid | | `uri` | URI in Protected storage.

**Type**: String | **Example**: ```json { "session_id": "0F6C5CB2-C01F-4E7C-A061-6F61F01692A1", "uri": "5D0B5B70-BEB7-48A7-94BA-683D86FC3886#storage_credentials" } ``` #### Responses | Code | Description | |------|-------------| | `200` | - | | `500` | Internal error occurred. | | `400` | Invalid request. | | `404` | Resource not found. | ### POST /storage_nodes/{storageNodeID}/check_location Available in on-premises version only. Attempts to find a vault by the provided path. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Request body **Media type**: application/json **Schema definition**: | Name | Description | |------|-------------| | `uri_to_find` | Path of possible vault.

**Type**: String | | `protected_storage` | **Type**: Object | **Example**: ```json { "uri_to_find": "E:\\MyDocuments", "protected_storage": { "session_id": "0F6C5CB2-C01F-4E7C-A061-6F61F01692A1" } } ``` #### Responses | Code | Description | |------|-------------| | `200` | - | | `500` | Internal error occurred. | | `400` | Invalid request. | | `404` | Resource not found. | ### DELETE /abgw_storages/{storageID} Available in on-premises version only. Unregisters the storage from account server and detach all its vaults. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `infra_admin` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `last_seen_at` | (Optional) Date and time in RFC 3339 when the storage was last seen.

**Type**: DateTime | | `tenantID` | (Optional) Tenant ID (where the vault will be removed from) to separate the target tenant from the effective one

**Type**: any | #### Responses | Code | Description | |------|-------------| | `200` | - | ### GET /storage_dirs/{storageID} Available in on-premises version only. Fetches a list of top level storage folders. Detached folders are always listed. Attached folders listed depending on the `includeAttached` parameter value. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `includeAttached` | (Optional) List all folders including attached to vaults.

**Type**: Boolean
**Default**: false | #### Responses | Code | Description | |------|-------------| | `200` | - | ### GET /storage_dirs/{storageID}/{path} Available in on-premises version only. Fetches a list of storage folders in path. Detached folders are always listed. Attached folders listed depending on the `includeAttached` parameter value. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `includeAttached` | (Optional) List all folders including the ones attached to vaults.

**Type**: Boolean
**Default**: false | #### Responses | Code | Description | |------|-------------| | `200` | - | ### GET /search_index_size_stats/{tenantID} Fetches a list of archives and their search index sizes for the tenant. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `archive_name` | (Optional) Archive Name.

**Type**: String | #### Responses | Code | Description | |------|-------------| | `200` | - | ### GET /storage_usage_stats Fetches the storage usage counters per tenant. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` #### Request parameters #### Responses | Code | Description | |------|-------------| | `200` | - | ### GET /antimalware_scan_stats Fetches the antimalware backup scan counters. #### Security The endpoint supports the following authorization methods: `OAuth 2.0` For OAuth2 authorization method, one of the following scopes is required by the endpoint: * `vault_manager::system_admin` * `vault_manager::admin` * `protection::readonly` #### Request parameters ##### Query parameters | Name | Description | |------|-------------| | `created` | (Optional) Show backups created only within specified time range.

**Type**: Array of String
**Array type description:**
A filter by date and time in RFC 3339 format with the support
for comparison operators.

Available operators:

* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals

**Type**: String | | `archive_type` | (Optional) Show only backups of specified archive types.

**Type**: String | #### Responses | Code | Description | |------|-------------| | `200` | - |