Enable comprehensive panoramic protection for multiple volumes (v2)
POST /account/{accountId}/providers/cloudmanager_cbs/api/v2/panoramic-protection/working-environment/{workingEnvironmentId}/volume
Enables comprehensive panoramic protection for multiple volumes. Based on the selected topology (cascading or fan-out), the API creates a replication relationship to the secondary cluster and a backup-to-cloud relationship to a cloud or StorageGRID object store. During replication setup, the API verifies cluster peering between the primary and secondary clusters and, if missing, creates cluster peering, SVM peering, and a DP volume on the secondary cluster. The API then runs SnapMirror create and initialize operations. For backup to cloud, the API creates a bucket and then creates and initializes the SnapMirror Cloud relationship.
Token usage: NetApp Console user token.
Parameters
| Name | Type | In | Required | Description |
|---|---|---|---|---|
accountId |
string |
path |
True |
Account ID |
workingEnvironmentId |
string |
path |
True |
System ID |
authorization |
string |
header |
True |
Authorization token |
X-Agent-Id |
string |
header |
True |
Agent ID |
Request Body
| Name | Type | Required | Description |
|---|---|---|---|
auto-backup-enabled |
boolean |
False |
Automatically back up all volumes in the system |
max-transfer-rate |
number |
False |
Modifies node-level throttling of an ONTAP cluster. Value to be specified in kilo bytes per second (kbps). A value of 0 implies unlimited throttling. |
export-existing-snapshots |
boolean |
False |
Export pre-existing snapshots to object storage |
fix-mismatch-labels |
boolean |
False |
|
skip-discovery |
boolean |
False |
Skip discovery as part of backup activation. Default value is false. |
skip-workload-validation |
boolean |
False |
Skip workload validation during panoramic protection activation for volumes |
volumes |
array[volumes] |
True |
Example request
{
"volumes": [
{
"volume-id": "string",
"volume-name": "string",
"source-snapshot": "string",
"architecture": "string",
"workload": "string",
"mode": "string",
"type": "string",
"backup-policy": {
"name": "string",
"rule": [
{
"label": "string",
"retention": "string"
}
],
"archive-after-days": "string",
"object-lock": "string",
"sgws-archival": {
"cloud-storage-pool": {
"provider": "string",
"provider-account-id": "string",
"region": "string",
"archive-storage-class": "string",
"resource-group": "string"
}
}
},
"snapshot-policy": "string",
"replication": {
"working-environment-id": "string",
"working-environment-name": "string",
"svm": "string",
"policy-name": "string",
"prefix": "string",
"suffix": "string",
"destination-aggregates": [
"string"
]
},
"is-enabled": {
"local-snapshot": false,
"replication": false,
"cloud-backup": false
},
"object-storage-details": [
{
"object-storage-name": "string",
"provider": "string",
"region": "string",
"ip-space": "string",
"aws": {
"account-id": "string",
"kms-key-id": "string",
"private-endpoint": {
"id": "string"
},
"archive-storage-class": "string"
},
"azure": {
"resource-group": "string",
"storage-account": "string",
"subscription": "string",
"private-endpoint": {
"subnet": "string"
},
"key-vault": {
"key-vault-id": "string",
"key-name": "string"
}
},
"gcp": {
"project-id": "string",
"access-key": "string",
"secret-password": "string",
"credentials-id": "string",
"kms": {
"key-ring-id": "string",
"crypto-key-id": "string"
}
},
"sgws": {
"storage-grid-id": "string",
"storage-server-name": "string",
"storage-server": "string",
"access-key": "string",
"secret-password": "string",
"credential-id": "string"
},
"ontap-s3": {
"storage-server": "string",
"access-key": "string",
"secret-password": "string",
"credential-id": "string"
},
"s3-compatible": {
"storage-server": "string",
"access-key": "string",
"secret-password": "string"
}
}
]
}
]
}
Response
Status: 202, Default response
| Name | Type | Required | Description |
|---|---|---|---|
job-id |
string |
False |
Example response
{
"job-id": "string"
}
Definitions
See Definitions
rule
| Name | Type | Required | Description |
|---|---|---|---|
label |
string |
True |
|
retention |
string |
True |
cloud-storage-pool
| Name | Type | Required | Description |
|---|---|---|---|
provider |
string |
True |
Cloud provider where the cloud storage pool is hosted |
provider-account-id |
string |
True |
Cloud provider account ID where the cloud storage pool is hosted |
region |
string |
True |
Cloud provider region where the cloud storage pool is hosted |
archive-storage-class |
string |
False |
Required for AWS to specify which storage class to use for archiving |
resource-group |
string |
False |
Required when the provider is Azure |
sgws-archival
| Name | Type | Required | Description |
|---|---|---|---|
cloud-storage-pool |
True |
backup-policy
| Name | Type | Required | Description |
|---|---|---|---|
name |
string |
True |
Required input |
rule |
array[rule] |
False |
|
archive-after-days |
string |
False |
|
object-lock |
string |
False |
|
sgws-archival |
False |
replication
| Name | Type | Required | Description |
|---|---|---|---|
working-environment-id |
string |
True |
|
working-environment-name |
string |
True |
|
svm |
string |
True |
|
policy-name |
string |
True |
|
prefix |
string |
False |
|
suffix |
string |
False |
|
destination-aggregates |
array[string] |
True |
is-enabled
| Name | Type | Required | Description |
|---|---|---|---|
local-snapshot |
boolean |
True |
|
replication |
boolean |
True |
|
cloud-backup |
boolean |
True |
private-endpoint
| Name | Type | Required | Description |
|---|---|---|---|
id |
string |
True |
Optional input field for a private endpoint |
aws
| Name | Type | Required | Description |
|---|---|---|---|
account-id |
string |
True |
Required when the provider is AWS |
kms-key-id |
string |
False |
Optional input field for customer managed key use case |
private-endpoint |
False |
||
archive-storage-class |
string |
False |
Required for AWS to specify which storage class to use for archiving |
private-endpoint
| Name | Type | Required | Description |
|---|---|---|---|
subnet |
string |
False |
Required input field for on-premises private link configuration |
skip-creation |
boolean |
False |
Optional input field to skip private endpoint creation |
key-vault
| Name | Type | Required | Description |
|---|---|---|---|
key-vault-id |
string |
True |
|
key-name |
string |
True |
azure
| Name | Type | Required | Description |
|---|---|---|---|
resource-group |
string |
True |
Required when the provider is Azure |
storage-account |
string |
False |
Required when the provider is Azure |
subscription |
string |
True |
Required when the provider is Azure |
private-endpoint |
False |
||
key-vault |
False |
kms
| Name | Type | Required | Description |
|---|---|---|---|
key-ring-id |
string |
True |
|
crypto-key-id |
string |
True |
gcp
| Name | Type | Required | Description |
|---|---|---|---|
project-id |
string |
False |
Required when the provider is Google Cloud |
access-key |
string |
False |
Required input field for on-premises use case |
secret-password |
string |
False |
Required input field for on-premises use case |
credentials-id |
string |
False |
Google Cloud credentials ID. Required when the provider is Google Cloud |
kms |
False |
sgws
| Name | Type | Required | Description |
|---|---|---|---|
storage-grid-id |
string |
False |
StorageGRID ID. Required input field for StorageGRID provider |
storage-server-name |
string |
False |
StorageGRID server name. Required input field for a StorageGRID provider |
storage-server |
string |
False |
StorageGRID server URL with port. Required input field for a StorageGRID provider |
access-key |
string |
False |
Required input field for on-premises use case. |
secret-password |
string |
False |
Required input field for on-premises use case. |
credential-id |
string |
False |
StorageGRID credential ID for fetching credential from credential service |
ontap-s3
| Name | Type | Required | Description |
|---|---|---|---|
storage-server |
string |
False |
ONTAP S3 server URL. Required input field for ONTAP_S3 provider. |
access-key |
string |
False |
Optional input field for on-premises use case. |
secret-password |
string |
False |
Required input field for on-premises use case. |
credential-id |
string |
False |
ONTAP S3 credential ID for fetching credentials from the credential service. |
s3-compatible
| Name | Type | Required | Description |
|---|---|---|---|
storage-server |
string |
True |
S3 storage server. |
access-key |
string |
True |
Required input field for on-premises use case. |
secret-password |
string |
True |
Required input field for on-premises use case |
object-storage-details
| Name | Type | Required | Description |
|---|---|---|---|
object-storage-name |
string |
False |
Object storage name to be used for protection. If not provided, the name is auto-generated. |
provider |
string |
True |
Required input field for on-premises use case
|
region |
string |
False |
Required input field |
ip-space |
string |
False |
Required input field for on-premises use case |
aws |
False |
||
azure |
False |
||
gcp |
False |
||
sgws |
False |
||
ontap-s3 |
False |
||
s3-compatible |
False |
volumes
| Name | Type | Required | Description |
|---|---|---|---|
volume-id |
string |
True |
|
volume-name |
string |
True |
|
source-snapshot |
string |
False |
Optional existing local snapshot used as the backup source |
architecture |
string |
False |
Type of storage architecture. Fan-out or cascading. |
workload |
string |
False |
|
mode |
string |
True |
|
type |
string |
False |
|
backup-policy |
False |
||
snapshot-policy |
string |
False |
Snapshot policy name |
replication |
False |
||
is-enabled |
True |
||
object-storage-details |
array[object-storage-details] |
False |