APIs in Category: snapshot | Vserver API version 1.20

snapshot-autodelete-list-info snapshot-autodelete-set-option snapshot-create snapshot-create-async snapshot-delete snapshot-delete-async snapshot-delta-info snapshot-get-iter snapshot-get-reserve snapshot-get-schedule snapshot-list-info snapshot-modify-iter snapshot-multicreate snapshot-multicreate-validate snapshot-multidelete snapshot-multirename snapshot-partial-restore-file snapshot-partial-restore-file-list-info snapshot-policy-add-schedule snapshot-policy-create snapshot-policy-delete snapshot-policy-get snapshot-policy-get-iter snapshot-policy-modify snapshot-policy-modify-schedule snapshot-policy-remove-schedule snapshot-reclaimable-info snapshot-rename snapshot-reserve-list-info snapshot-restore-file snapshot-restore-file-info snapshot-restore-volume snapshot-restore-volume-async snapshot-set-reserve snapshot-volume-info

NetApp Manage ONTAP

snapshot-autodelete-list-info | [top]

> Returns the current snapshot autodelete settings.

> Input Name | Range | Type | Description
> volume |  | string | Name of the existing volume for which we want snapshot autodelete settings
> Output Name | Range | Type | Description
> options |  | snapshot-autodelete-info[] | List of snapshot autodelete options for this volume.

> Errno | Description
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMEMOUNTING |  |
> EVOLUMEOFFLINE |  |
> EVOLUMEBUSY |  |
> EVSERVERNOTFOUND |  |
> EINTERNALERROR |  |
> EMULTIPLEVOLSFOUND |  |
> EVOLUMENOTONLINE |  |
> EOPNOTSUPPORTED |  |
> EINVALIDINPUTERROR |  |
> EOBJECTNOTFOUND |  |
> EAGGRRELOCATING |  |

> Vfiler-enabled
> Yes

snapshot-autodelete-set-option | [top]

> Set the option named 'option-name' to the value specified by 'option-value' in the autodelete settings of the specified volume. This API is not supported on Infinite Volume.

> Input Name | Range | Type | Description
> option-name |  | string | Name of the option to be set. Possible values: "state" (value: "on" | "off") This option determines if the snapshot autodelete is currently enabled for the volume. Setting the option to "on" switches on the snapshot autodelete for the volume. Setting the option to "off" switches off the snapshot autodelete for the volume. "commitment" (value: "try" | "disrupt" | "destroy" ) This option determines the snapshots which snapshot autodelete is allowed to delete to get back space. Setting this option to "try" only permits the snapshots which are not locked by data protection utilities (dump, mirroring, NDMPcopy) and data backing functionalities (volume, LUN and File clones) to be deleted. Setting this option to "disrupt" only permits the snapshots which are not locked by data backing functionalities (volume, LUN and File clones) to be deleted. Setting this option to "destroy", will destroy the data backing functionality (volume, LUN and File clones) if the backing snapshot is deleted. "trigger" (value: "volume" | "snap_reserve" | "space_reserve") This option determines the condition which starts the automatic deletion of snapshots. Setting this option to "volume" triggers automatic deletion of snapshots when the volume reaches threshold capacity and the volume's snap reserve has been exceeded. Setting the option to "snap_reserve" triggers automatic deletion of snapshots when the snap reserve of the volume reaches threshold capacity. Setting the option to "space_reserve" triggers automatic deletion of snapshots when the space reserved the volume reaches threshold capacity and the volume's snap reserve has been exceeded. The threshold capacity is determined by the size of the volume as given below: If the volume size is less than 20 GB, the autodelete threshold is 85%. If the volume size is equal to or greater than 20 GB and less than 100 GB, the autodelete threshold is 90%. If the volume size is equal to or greater than 100 GB and less than 500 GB, the autodelete threshold is 92%. If the volume size is equal to or greater than 500 GB and less than 1 TB, the autodelete threshold is 95%. If the volume size is equal to or greater than 1 TB, the autodelete threshold is 98%. "target_free_space" (value: < number >) This option determines when snapshot autodelete should stop deleting snapshot. Depending on the trigger, snapshots are deleted till we reach the target free space percentage. "delete_order" (value: newest_first | oldest_first) This option determines if the oldest or newest snapshot is deleted first. "defer_delete" (value: scheduled | user_created | prefix | none) This option determines which kind of snapshots to delete in the end. Setting this option value to "scheduled" will delete the snapshots created by the snapshot scheduler last. Setting this option value to "user_created" will delete the snapshots not created by the snapshot scheduler last. Setting this option value to "prefix" will delete the snapshots matching the prefix string to be deleted last. Setting this option value to "none" will disable the above choices. "prefix" (value: < string >) This option can be set to provide the prefix string for the "prefix" value of the "defer_delete" option. The prefix string length can be 15 char long. "destroy_list" (value: < string >) A comma seperated list of services which can be destroyed if the snapshot backing that service is deleted. For 7-mode, the possible values for this option are a combination of "lun_clone", "vol_clone", "cifs_share", "file_clone" or "none". For cluster-mode, the possible values for this option are a combination of "lun_clone,file_clone" (for LUN clone and/or file clone), "lun_clone,sfsr" (for LUN clone and/or sfsr), "vol_clone", "cifs_share", or "none". Please note that "lun_clone", "file_clone" and "sfsr" individually are not valid values. Only pairs "lun_clone,file_clone" and "lun_clone,sfsr" are supported. The option "sfsr" is not supported for 7-mode. The default value is "none" for 7-mode and cluster-mode.
> option-value |  | string | The value to set the named option
> volume |  | string | Name of the volume for which we want to change autodelete settings.

> Errno | Description
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMEMOUNTING |  |
> EVOLUMEOFFLINE |  |
> EVOLUMEBUSY |  |
> EOPNOTSUPPORTED |  |
> EVSERVERNOTFOUND |  |
> EINTERNALERROR |  |
> EONTAPI_EVOLOPNOTSUPP |  |
> EAGGRRELOCATING |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EINCOMPATIBLE_AUTOSHRINK_AUTODELETE_TRIGGER |  |

> Vfiler-enabled
> Yes

snapshot-create | [top]

> Create a new snapshot on a specified volume. This API is not supported on Infinite Volume.

> Input Name | Range | Type | Description
> async |  | boolean optional | If true, the snapshot is to be created asynchronously. The default value is false.
> comment |  | string optional | A human readable comment attached with the snapshot. The size of the comment can be at most 255 characters.
> snapmirror-label |  | string optional | A human readable SnapMirror Label attached with the snapshot. Size of the label can be at most 31 characters. This label will be applied as an attribute to the snapshot that is created and will be used by the vaulting system to identify a vaulting scheme.
> snapshot |  | string nonempty | Name of the snapshot to be created. The maximum string length is 256 characters.
> volume |  | string | Name of the volume on which the snapshot is to be created. The volume name can contain letters, numbers, and the underscore character (_), but the first character must be a letter or an underscore.

> Errno | Description
> ESNAPSHOTEXISTS |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMEMOUNTING |  |
> EVOLUMEOFFLINE |  |
> ENOMORESNAPS |  |
> ENOSPCSNAP |  |
> EONTAPI_ENOMEM |  |
> EONTAPI_ETIMEDOUT |  |
> EONTAPI_EINVAL |  |
> EVOLUMEBUSY |  |
> EVSERVERNOTFOUND |  |
> ECLONEINPROGRESS |  |
> EAGGRRELOCATING |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EVOLUME_TYPE_NOT_SUPPORTED |  |

> Vfiler-enabled
> Yes

snapshot-create-async | [top]

> Create a new snapshot on a specified Infinite Volume. This API is not supported on flexible volumes and Infinite Volume constituents.

> Input Name | Range | Type | Description
> comment |  | string optional | A human readable comment attached with the snapshot. The size of the comment can be at most 255 characters.
> snapshot |  | string nonempty | Name of the snapshot to be created. The maximum string length is 256 characters.
> volume |  | string | Name of the Infinite Volume on which the snapshot is to be created. The Infinite Volume name can contain letters, numbers, and the underscore character (_), but the first character must be a letter or an underscore.
> Output Name | Range | Type | Description
> result-error-code | [0..2^32-1] | integer optional | Error code, if the operation caused an error.
> result-error-message |  | string optional | Error description, if the operation caused an error.
> result-jobid | [0..2^64-1] | integer optional | Job Id, if this operation was performed via a job.
> result-status |  | string | The operation status. Possible values: "succeeded", "in_progress", "failed".

> Errno | Description
> ESNAPSHOTEXISTS |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMEMOUNTING |  |
> EVOLUMEOFFLINE |  |
> ENOMORESNAPS |  |
> ENOSPCSNAP |  |
> EONTAPI_ENOMEM |  |
> EONTAPI_ETIMEDOUT |  |
> EONTAPI_EINVAL |  |
> EVOLUMEBUSY |  |
> EVSERVERNOTFOUND |  |
> EVOLUME_TYPE_NOT_SUPPORTED |  |

snapshot-delete | [top]

> Delete a snapshot on a specified volume. EBUSY is returned when the snapshot is in use. EROFS is returned when the volume is read-only. EAGAIN is returned when splitting a blockmap or reverting. This API is not supported on Infinite Volume.

> Input Name | Range | Type | Description
> ignore-owners |  | boolean optional | If this field is true, snapshot will be deleted even if some other processes are accessing it. The default value is false.
> snapshot |  | string | Name of snapshot to be deleted on the specified volume.
> snapshot-instance-uuid |  | UUID optional | The 128 bit unique snapshot identifier expressed in the form of UUID. This field is optional and can appear together with 'snapshot' to uniquely identify a snapshot for deletion. If this field is provided, 'snapshot' is a required parameter. An example of an actual UUID is: 73a010ec-3d28-11df-84e8-123478563412
> volume |  | string | Name of the volume on which the snapshot is to be deleted.

> Errno | Description
> ESNAPSHOTDOESNOTEXIST |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMEMOUNTING |  |
> EVOLUMEOFFLINE |  |
> EAPIERROR |  |
> ESNAPSHOTNOTALLOWED |  |
> EONTAPI_EBUSY |  |
> EONTAPI_EROFS |  |
> EONTAPI_EAGAIN |  |
> EVOLUMEBUSY |  |
> EVSERVERNOTFOUND |  |
> EOBJECTNOTFOUND |  |
> EOPNOTSUPPORTED |  |
> EAGGRRELOCATING |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EVOLUME_TYPE_NOT_SUPPORTED |  |

> Vfiler-enabled
> Yes

snapshot-delete-async | [top]

> Delete a snapshot on a specified Infinite Volume. EBUSY is returned when the snapshot is in use. EROFS is returned when the Infinite Volume is read-only. EAGAIN is returned when splitting a blockmap or reverting. This API is not supported on flexible volumes and Infinite Volume constituents.

> Input Name | Range | Type | Description
> ignore-owners |  | boolean optional | If this field is true, snapshot will be deleted even if some other processes are accessing it. The default value is false.
> snapshot |  | string | Name of snapshot to be deleted on the specified Infinite Volume.
> snapshot-instance-uuid |  | UUID optional | The 128 bit unique snapshot identifier expressed in the form of UUID. This field is optional and can appear together with 'snapshot' to uniquely identify a snapshot for deletion. If this field is provided, 'snapshot' is a required parameter. An example of an actual UUID is: 73a010ec-3d28-11df-84e8-123478563412
> volume |  | string | Name of the Infinite Volume on which the snapshot is to be deleted.
> Output Name | Range | Type | Description
> result-error-code | [0..2^32-1] | integer optional | Error code, if the operation caused an error.
> result-error-message |  | string optional | Error description, if the operation caused an error.
> result-jobid | [0..2^64-1] | integer optional | Job Id, if this operation was performed via a job.
> result-status |  | string | The operation status. Possible values: "succeeded", "in_progress", "failed".

> Errno | Description
> ESNAPSHOTDOESNOTEXIST |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMEMOUNTING |  |
> EVOLUMEOFFLINE |  |
> EAPIERROR |  |
> ESNAPSHOTNOTALLOWED |  |
> EONTAPI_EBUSY |  |
> EONTAPI_EROFS |  |
> EONTAPI_EAGAIN |  |
> EVOLUMEBUSY |  |
> EVSERVERNOTFOUND |  |
> EOBJECTNOTFOUND |  |
> EOPNOTSUPPORTED |  |
> EVOLUME_TYPE_NOT_SUPPORTED |  |

snapshot-delta-info | [top]

> Returns the amount of space consumed between two snapshots or a snapshot and active filesystem.

> Input Name | Range | Type | Description
> snapshot1 |  | string | Name of snapshot to be compared with snapshot2 for space consumption calculations.
> snapshot2 |  | string optional | Name of snapshot to be compared with snapshot1 for space consumption calculations. If the snapshot is not specified, it is assumed to be Active File System.
> volume |  | string | Name of the volume on which the snapshot delta is to be calculated.
> Output Name | Range | Type | Description
> consumed-size |  | integer | Size in bytes of space changed between the 2 specified snapshots or snapshot and the active file system. Range : [0 - 2^63-1].
> elapsed-time |  | integer | Time in seconds elapsed between the 2 specified snapshots or the snapshot and the active file system. Range : [0 - 2^31-1].

> Errno | Description
> ESNAPSHOTDOESNOTEXIST |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMEMOUNTING |  |
> EVOLUMEOFFLINE |  |
> EVOLUMEBUSY |  |
> EVSERVERNOTFOUND |  |
> EINTERNALERROR |  |
> EMULTIPLEVOLSFOUND |  |
> EOBJECTNOTFOUND |  |
> EVOLUMENOTONLINE |  |
> EINVALIDINPUTERROR |  |
> EOPNOTSUPPORTED |  |
> EAGGRRELOCATING |  |

> Vfiler-enabled
> Yes

snapshot-get-iter | [top]

> Iterate over a list of snapshot objects.

> Input Name | Range | Type | Description
> desired-attributes |  | snapshot-info optional | Specify the attributes that should be returned. If not present, all attributes for which information is available will be returned. If present, only the desired attributes for which information is available will be returned.
> max-records | [1..2^32-1] | integer optional | The maximum number of records to return in this call. Default: 20
> query |  | snapshot-info optional | A query that specifies which objects to return. A query could be specified on any number of attributes in the snapshot object. All snapshot objects matching this query up to 'max-records' will be returned.
> tag |  | string optional | Specify the tag from the last call. It is usually not specified for the first call. For subsequent calls, copy values from the 'next-tag' obtained from the previous call.
> Output Name | Range | Type | Description
> attributes-list |  | snapshot-info[] optional | The list of attributes of snapshot objects.
> next-tag |  | string optional | Tag for the next call. Not present when there are no more snapshot objects to return.
> num-records | [0..2^32-1] | integer | The number of records returned in this call.
> volume-errors |  | volume-error[] optional | Volume Error Info

> Errno | Description
> EINTERNALERROR |  |

snapshot-get-reserve | [top]

> Obtain the current snapshot reserve on a specified volume. Error Returns: Invalid volume name.

> Input Name | Range | Type | Description
> volume |  | string | Name of the volume that contains the snapshot reserve.
> Output Name | Range | Type | Description
> blocks-reserved |  | integer | The number of 1024 byte blocks that has been set aside as reserve for snapshot usage.
> percent-reserved |  | integer | The percentage of disk space that has been set aside as reserve for snapshot usage.

> Errno | Description
> ESNAPSHOTDOESNOTEXIST |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMEMOUNTING |  |
> EVOLUMEOFFLINE |  |
> EVOL_RESTRICTED |  |
> EVOLUMEBUSY |  |
> EOPNOTSUPPORTED |  |
> EVSERVERNOTFOUND |  |
> EOBJECTNOTFOUND |  |
> E_VOLUME_INACCESSIBLE |  |
> EAGGRRELOCATING |  |

> Vfiler-enabled
> Yes

snapshot-get-schedule | [top]

> Obtain the current snapshot schedule on a specified volume. Error Returns: Invalid volume name.

> Input Name | Range | Type | Description
> volume |  | string | This the volume name where the snapshots are located.
> Output Name | Range | Type | Description
> days |  | integer | The number of snapshots taken daily to keep on line. Range : [0..2^32-1].
> hours |  | integer | The number of snapshots taken hourly to keep on line. Range : [0..2^32-1].
> minutes |  | integer | The number of snapshots taken minutely to keep on line. Range : [0..2^32-1].
> weeks |  | integer | The number of snapshots taken weekly to keep on line. Range : [0..2^32-1].
> which-hours |  | string | A list of the hours at which the hourly snapshots are created.
> which-minutes |  | string | A list of the minutes at which the minutely snapshots are created.

> Errno | Description
> ESNAPSHOTDOESNOTEXIST |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMEMOUNTING |  |
> EVOLUMEOFFLINE |  |
> EVSERVERNOTFOUND |  |
> EUSECLUSTERNATIVEUI |  |
> EMULTIPLEVOLSFOUND |  |
> EVOLUMEBUSY |  |

> Vfiler-enabled
> Yes

snapshot-list-info | [top]

> Return snapshot information for a specified volume. A list of snapshots and information about each snapshot is returned. In Data ONTAP Cluster-Mode, 'snapshot-get-iter' API is the preferred way of retrieving snapshot information.

> Input Name | Range | Type | Description
> is-7-mode-snapshot |  | boolean optional | If set to true, check if snapshot is a 7-mode snapshot. A 7-mode snapshot can appear in a cluster-mode volume as a result of the volume being transitioned from 7-mode to cluster-mode. A 7-mode snapshot cannot be used in a volume snapshot restore. The default value is false.
> lun-clone-snapshot |  | boolean optional | If set to true, check if snapshot contains any lun clones. The default value is false.
> snapowners |  | boolean optional | If set to true, owners of the busy snapshot are returned. If false, or if the option is omitted, the list of owners is not returned.
> target-name |  | string optional | Name of the object on which to list the snaplist information. Arguments "target-name" and "target-type" should be used together. Arguments "volume" and ("target-name", "target-type") pair are mutually exclusive. One and only one of them should be specified.
> target-type |  | string optional | Type of the object on which to list the snaplist information. Possible values: volume, aggregate.
> terse |  | boolean optional | If set to true, the snapshot block ownership values, namely the "total" and "cumulative-total" outputs, will be omitted. If set to false, the block ownership calculation will be included in the output. The default value is false.
> volume |  | string optional | Name of the volume on which to list the snaplist information. It is for backward compatibility. The recommended usage is to use arguments ("target-name", "target-type") pair.
> Output Name | Range | Type | Description
> snapshots |  | snapshot-info[] optional |

> Errno | Description
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMEMOUNTING |  |
> EVOLUMEOFFLINE |  |
> EVSERVERNOTFOUND |  |
> EVOLUMEBUSY |  |

> Vfiler-enabled
> Yes

snapshot-modify-iter | [top]

> Modify the attributes of snapshot or a group of snapshot objects.

> Input Name | Range | Type | Description
> attributes |  | snapshot-info | Specify at least one modifiable element. Do not specify any other element.
> continue-on-failure |  | boolean optional | This input element is useful when multiple snapshot objects match a given query. If set to true, the API will continue modifying the next matching snapshot even when modification of a previous snapshot fails. If set to false, the API will return on the first failure. Default: false
> max-failure-count | [1..2^32-1] | integer optional | When allowing failures ('continue-on-failure' is set to true), then this input element may be provided to limit the number of failed modify operations before the server gives up and returns. If set, the API will continue modifying the next matching snapshot even when the modification of a previous matching snapshot fails, and do so until the total number of objects failed to be modified reaches the maximum specified. If set to the maximum or not provided, then there will be no limit on the number of failed modify operations. Only applicable if 'continue-on-failure' is set to true. Default: 2^32-1
> max-records | [1..2^32-1] | integer optional | The maximum number of objects to be modified in this call. Default: 20
> query |  | snapshot-info | If modifying a specific snapshot, this input element must specify all keys. If modifying snapshot objects based on query, this input element must specify a query.
> return-failure-list |  | boolean optional | If set to true, the API will return the list of snapshot objects (just keys) that were not modified due to some error. If set to false, the list of snapshot objects not modified will not be returned. Default: true
> return-success-list |  | boolean optional | If set to true, the API will return the list of snapshot objects (just keys) that were successfully updated. If set to false, the list of snapshot objects modified will not be returned. Default: true
> tag |  | string optional | Specify the tag from the last call. It is usually not specified for the first call. For subsequent calls, copy values from the 'next-tag' obtained from the previous call.
> Output Name | Range | Type | Description
> failure-list |  | snapshot-modify-iter-info[] optional | Information about snapshot objects that were not modified due to some error. This element will be returned only if input element 'return-failure-list' is true.
> next-tag |  | string optional | Tag for the next call. Not present when there are no more matching snapshot objects to be modified.
> num-failed | [0..2^32-1] | integer optional | Number of snapshot objects that matched the query, but were not modified due to some error.
> num-succeeded | [0..2^32-1] | integer optional | The number of snapshot objects that matched the query and were successfully updated.
> success-list |  | snapshot-modify-iter-info[] optional | The snapshot objects that were successfully updated. This element will be returned only if input element 'return-success-list' is true

> Errno | Description
> EOPNOTSUPPORTED |  |
> EINVALIDINPUTERROR |  |

snapshot-multicreate | [top]

> Create a snapshot with the specific name, on each of the specified volumes. It is the caller's responsibility to ensure that the data in the snapshots across all volumes is consistent, by quiescing I/O to these volumes (or the LUNs of interest in these volumes), across the call to this API. The API returns SUCCESS when a snapshot is successfully created on each of the specified volumes. This API bails out and reports FAILURE when an error is found at creating a snapshot on a volume. It does not continue on to create snapshots on the remaining volumes. When the API fails, the returned error code is for the failed volume. For clustered systems, the output 'status' will be set to FALSE in case of failure. In such case the caller should look at the output 'volume-errors' to find out in which volume snapshot creation failed. When an error occurs, it is possible that some snapshots may have been created. If the option cleanup is set to TRUE (default), API will attempt to delete these snapshots (but snapshot deletion may fail). When set to FALSE, it is users' responsibility to delete them. The output array volume-snapcreated-list records for each volume, if a snapshot has been created or not. There are at least two expected use cases for this API. The first one is to call this API with the cleanup option set to TRUE (default). If the call fails, any successfully created snapshots will be deleted before the function returns. This is a simple use case, but has the downside that in case of a failure, the call may take a long time to return due to snapshot cleanup. Another use case would be to call this API in a time critical environment. In such a scenario, it would be good to reduce the impact due to a failure. Hence, it would be better to first call the snapshot-multicreate-validate ZAPI, which would reduce the likelihood of failure of the snapshot-multicreate API. In case a failure does occur, the caller could avoid the cleanup delay by setting the cleanup option to FALSE, and performing snapshot cleanup later, outside the time-critical window. This API is not supported on Infinite Volume.

> Input Name | Range | Type | Description
> cleanup |  | boolean optional | When the API fails, some snapshots may have been created for some volumes. When set to TRUE, the API will attempt to delete these snapshots. Note that newly created snapshots cannot be deleted right away until the snapshots are on-disk, which may take up to 10 secs. When set to FALSE, newly created snapshots are not deleted. Users can delete them later as needed. Default is TRUE.
> snapshot |  | string nonempty | Name of the snapshot to be created. The maximum string length is 256 characters.
> volume-names |  | volume-name[] | Names of the volumes across which the snapshot is to be created. The maximum number of volumes on a cluster system is 1200 (100 for traditional volumes and 500 for flexible volumes. The number is then doubled for a cluster system).
> Output Name | Range | Type | Description
> status |  | boolean optional | Set to 'FALSE' in case of failure of the API. The output 'volume-errors' will contain the error code and reason for the volume on which snapshot creation failed. This output is only returned for clustered systems.
> volume-errors |  | volume-error[] optional | Error code and reason due to which snapshot creation failed on a volume. This output is only returned for clustered systems.
> volume-is-snapcreated-list |  | volume-is-snapcreated[] optional | An array records if a snapshot has been created for a given volume. This is returned only in case of failure.

> Errno | Description
> ESNAPSHOTEXISTS |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMEMOUNTING |  |
> EVOLUMEOFFLINE |  |
> EVOLUMEBUSY |  |
> EOPNOTSUPPORTED |  |
> ENOMORESNAPS |  |
> EONTAPI_ENOSPCSNAP |  |
> EONTAPI_ENOMEM |  |
> EONTAPI_EINVAL |  |
> EONTAPI_EPERM |  |
> EONTAPI_EROFS |  |
> EONTAPI_EAGAIN |  |
> EONTAPI_EWORMPERIOD |  |
> EONTAPI_EWORMNOCLOCK |  |
> EVOLUMENOTONLINE |  |
> EVOLUME_TYPE_NOT_SUPPORTED |  |
> EVSERVERNOTFOUND |  |
> EOBJECTNOTFOUND |  |
> EINVALIDINPUTERROR |  |
> EOPNOTSUPPORTED |  |
> EAGGRRELOCATING |  |

> Vfiler-enabled
> Yes

snapshot-multicreate-validate | [top]

> This is a companion API of snapshot-multicreate. It validates the snapshot creation operation on the specified volumes. But it does not actually create any snapshot. This API only does validations on all volumes and report all errors in the output array. This API is intended to be issued before the snapshot-multicreate API to find out all the errors that may be found during the snapshot create. Its main purpose is to enable snapshot-multicreate's caller to reduce the likelihood of snapshot-multicreate's failure, thereby attempting to avoid the cleanup overhead (of deleting any newly created snapshots) during failure processing. However, this validation API does not guarantee that snapshot-multicreate API will actually work. Something could change between the two calls to cause the actual snapshot creations to fail. This API is not supported on Infinite Volume.

> Input Name | Range | Type | Description
> snapshot |  | string nonempty | Name of the snapshot to be created. The maximum string length is 256 characters.
> volume-names |  | volume-name[] | Names of the volumes across which the snapshot creation is to be validated.
> Output Name | Range | Type | Description
> volume-errors |  | volume-error[] | An array records the error code associated with each volume.

> Errno | Description
> EONTAPI_EINVAL |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMEMOUNTING |  |
> EVOLUMEOFFLINE |  |
> EOPNOTSUPPORTED |  |
> EVOLUMEBUSY |  |
> EVOLUMENOTONLINE |  |
> EVOLUME_TYPE_NOT_SUPPORTED |  |
> EVSERVERNOTFOUND |  |
> EOBJECTNOTFOUND |  |
> EINVALIDINPUTERROR |  |
> EOPNOTSUPPORTED |  |
> EAGGRRELOCATING |  |

> Vfiler-enabled
> Yes

snapshot-multidelete | [top]

> Delete the snapshot from the given flexible volumes. This API will return failure if the volume could not be found or it is busy. All the volumes should be online when this API is invoked. It will only delete snapshots on Read-Write volumes. Once all the necessary information to delete snapshots is available, this API will start deleting snapshots on the volumes. If any of the snapshot delete failed, the API will remember the failed volume and continue deleting snapshot on the remaining volumes. In case of failure to delete the snapshots from all the given volumes, the API will return a SUCCESS and also return information about the failed snapshot deletes via the 'volume-errors' output. If the API returns SUCCESS, the applications should check if the 'volume-errors' output is returned or not to check for failed snapshot deletions. This API is not supported on Infinite Volume.

> Input Name | Range | Type | Description
> snapshot |  | string nonempty | Name of the snapshot to be deleted. The maximum string length is 256 characters.
> volume-names |  | volume-name[] | Names of the volumes across which the snapshot is to be deleted.
> Output Name | Range | Type | Description
> volume-errors |  | volume-error[] optional | Error code and reason due to which snapshot deletion failed on a volume. This output is only returned when the API returns SUCCESS but snapshot on some volumes could not be deleted.

> Errno | Description
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMEOFFLINE |  |
> EVOLUMEBUSY |  |
> EONTAPI_ENOMEM |  |
> EONTAPI_EINVAL |  |
> EONTAPI_EPERM |  |
> EONTAPI_EROFS |  |
> EONTAPI_EAGAIN |  |
> EVOLUMENOTONLINE |  |
> EVOLUME_TYPE_NOT_SUPPORTED |  |
> EVSERVERNOTFOUND |  |
> EOBJECTNOTFOUND |  |
> EINVALIDINPUTERROR |  |
> EOPNOTSUPPORTED |  |
> EAGGRRELOCATING |  |

snapshot-multirename | [top]

> Rename Snapshot copies with a specific name to a new name across multiple volumes. The API processes all the specified volumes even if rename fails on one or more volumes. The snapshot-multirename-errors field should be inspected for failures even if the API is successful.This API is not supported on Infinite Volume.

> Input Name | Range | Type | Description
> new-snapshot-name |  | snapshot-id | The new snapshot name.
> snapshot-name |  | snapshot-id | The current snapshot name.
> volume-names |  | volume-name[] | Names of the volumes across which the snapshot is to be renamed.
> Output Name | Range | Type | Description
> snapshot-multirename-errors |  | snapshot-multirename-error[] optional | Information of the error details for snapshot multirename operation

> Errno | Description
> EVSERVERNOTFOUND |  |
> EOBJECTNOTFOUND |  |
> EINTERNALERROR |  |
> EOPNOTSUPPORTED |  |
> EVOLUMENOTONLINE |  |
> EVOLUME_TYPE_NOT_SUPPORTED |  |
> EVOLUMEDOESNOTEXIST |  |
> EAPIUNSUPPORTEDVERSION |  |
> EINVALIDINPUTERROR |  |

snapshot-partial-restore-file | [top]

> Restores a particular range of bytes in a file from a specified snapshot. Partial file restores are used to restore particular pieces of LUNs and NFS or CIFS container files that are used by a host to store multiple sources of data. For example, a host may be storing multiple user databases in the same LUN. A partial file restore can be used to restore one of those databases in the LUN while not touching the other databases that are also stored in the LUN. Compressed files will not be restored, thought compression may be enabled on the volume. Partial file restores require significant management by the caller. The caller must understand the metadata of the host LUN or container file so that they can know which bytes belong to the object being restored. Before the restore operation beings, the caller must quiesce the object being restored. It must remain quiesced for the duration of the restore operation. No host I/O should be issued for the object while it is being restored because the snapshot-partial-restore-file commands will be incrementally restoring the LUN or file and the host will therefore see inconsistent content for the object until the restore operation is completed. Host I/O is permitted for the other objects stored in the LUN or container file because the partial file restore will not touch the bytes belonging to those other objects. During the restore the caller must issue a snapshot-partial-restore-file command for each of the byte ranges that belong to the object being restored, based on the metadata of the LUN or container file. Once each command returns, that byte range is restored and the changes are persistent. If the filer should halt while processing a command, that byte range of the LUN or container file is inconsistent. Some of the bytes at the beginning of the range may have been restored while bytes at the end of the range have not been restored. Once the filer is rebooted the caller should re-issue the command to restore that byte range to complete the restore. Once the restore is completed, the caller must purge any host operating system or application buffers that may hold data for the LUN or file that is now stale. For NFS or CIFS mounted volumes the easiest way to purge any host buffers is to unmount and remount the volume. Applications holding buffered data may need to be shut down and restarted. Multiple partial file restore requests may be issued to the same LUN or file simultaneously. There is no requirement that the requests are all restoring from the same snapshot so that multiple restore operations for different objects may be concurrent on the same file. There is no checking to prevent overlapping byte ranges between requests. Preventing this condition is the responsibility of the caller. Partial file restores are not intended for restoring parts of normal user-level files that are stored in an NFS or CIFS exported volume. Use snapshot-restore-file to restore normal files like these. The volume where the LUN or container file to restore and where the snapshot to restore from live must be online and must not be a mirror volume. The partial file restore request may fail if there is not sufficient free space to overwrite all of the blocks in the byte range to be restored. The partial file restore request is synchronous, meaning that the command will not return until the entire byte range is restored. The snapshot being restored from cannot be deleted while a request is being executed, but it can be deleted between requests. If this happens the next request will notice that the snapshot has been deleted and will return an error. The maximum number of bytes of data that can be restored in a single request is given by the max-byte-count value returned by the snapshot-partial-restore-file-list-info command. This limit ensures that requests are periodically interruptible and avoids overloading the filer. If the system halts while a partial file restore request is being executed, the request will not be restarted upon reboot. Some of the bytes at the beginning of the range may have been restored while bytes at the end of the range have not been restored. The caller should reissue the partial file restore request for that byte range to complete the restore.

> Input Name | Range | Type | Description
> byte-count |  | integer | The number of bytes to restore, beginning at start-byte. The byte count must be a multiple of 4096. Use snapshot-partial-restore-file-list-info to determine the maximum number of bytes that can be restored in a single request. Range : [0 - 2^64-1]
> path |  | string | Path of the file to restore. Path syntax has two forms: /vol// / In the latter case (relative path), if volume was not specified, the root volume will be used.
> snapshot |  | string | The simple name of the snapshot to restore from. The snapshot must be from same volume as the file to partially restore.
> snapshot-instance-uuid |  | string optional | A unique physical version identifier for a given snapshot within a volume or an aggregate. A typical snapshot instance UUID will look like: c0335624-21f3-450c-aea1-55884d0218b9
> start-byte |  | integer | The starting byte offset in the file to partially restore. The first byte of the file is byte zero. The start byte must be a multiple of 4096. Range : [0 - 2^64-1]
> volume |  | string optional | Volume to restore to/from. If this is passed in, the path argument should be relative to the volume.

> Errno | Description
> EVSERVERNOTFOUND |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EONTAPI_EVOLOPNOTSUPP |  |
> EOBJECTNOTFOUND |  |
> EINTERNALERROR |  |
> EONTAPI_EBUSY |  |
> EINVALIDINPUTERROR |  |
> EVOLUMEBUSY |  |
> EAGGRRELOCATING |  |

> Vfiler-enabled
> Yes

> License
> snaprestore

snapshot-partial-restore-file-list-info | [top]

> Returns partial file restore settings of the vserver. This API is not supported on Infinite Volume.

> Output Name | Range | Type | Description
> max-byte-count |  | integer | The maximum number of bytes that can be restored in a single request. This limit ensures that requests are periodically interruptible and avoids overloading the filer. Range : [0 - 2^64-1]

> Errno | Description
> EVSERVERNOTFOUND |  |
> EVOLUMEBUSY |  |

> Vfiler-enabled
> Yes

> License
> snaprestore

snapshot-policy-add-schedule | [top]

> Add a new schedule to the Snapshot Policy. A schedule can be created by using 'job-schedule-cron-create' or 'job-schedule-interval-create' APIs.

> Input Name | Range | Type | Description
> count | [0..255] | integer | The maximum number of snapshots to be retained for the schedule. The count of all the snapshots for to be retained for this policy cannot be more than 255.
> policy |  | snapshot-policy | A human readable string describing the name of the snapshot scheduling policy.
> prefix |  | string optional | The snapshot name prefix for the schedule. This field should be unique within the policy.
> schedule |  | string | A human readable string describing the name of a new schedule to be added inside the snapshot policy. Maximum length of this field can be 255 characters. The schedule name can be any one of the reserved schedules like 'hourly', 'weekly' or 'daily' or it can be a user created schedule.
> snapmirror-label |  | string optional | The SnapMirror Label for the schedule. This label will be used to define vaulting policies at a vault destination. Maximum length of this field is 31 characters

> Errno | Description
> EOBJECTNOTFOUND |  |
> EINTERNALERROR |  |
> EINVALIDINPUTERROR |  |
> EOPNOTSUPPORTED |  |

snapshot-policy-create | [top]

> Create a new Snapshot Scheduling Policy

> Input Name | Range | Type | Description
> comment |  | string optional | A human readable description associated with the snapshot policy. The maximum length of this field can be 255 characters.
> count1 | [0..255] | integer | Retention count for the snapshots created by the first schedule. The count of all the snapshots to be retained for this policy cannot be more than 255.
> count2 | [0..255] | integer optional | Retention count for the snapshots created by the second schedule. The count of all the snapshots to be retained for this policy cannot be more than 255.
> count3 | [0..255] | integer optional | Retention count for the snapshots created by the third schedule. The count of all the snapshots to be retained for this policy cannot be more than 255.
> count4 | [0..255] | integer optional | Retention count for the snapshots created by the fourth schedule. The count of all the snapshots to be retained for this policy cannot be more than 255.
> count5 | [0..255] | integer optional | Retention count for the snapshots created by the fifth schedule. The count of all the snapshots to be retained for this policy cannot be more than 255.
> enabled |  | boolean | Status of the snapshot policy indicating whether the policy will be enabled or disabled. If set to true, the policy will be enabled.
> policy |  | string | The name of the snapshot scheduling policy which has to be created. This API creates a snapshot policy and adds the schedules to it. At the most 5 schedules can be added to the snapshot policy. Maximum length of this string can be 256 characters.
> prefix1 |  | string optional | Snapshot name prefix for the first schedule. Prefix name should be unique within the policy.
> prefix2 |  | string optional | Snapshot name prefix for the second schedule. Prefix name should be unique within the policy.
> prefix3 |  | string optional | Snapshot name prefix for the third schedule. Prefix name should be unique within the policy.
> prefix4 |  | string optional | Snapshot name prefix for the fourth schedule. Prefix name should be unique within the policy.
> prefix5 |  | string optional | Snapshot name prefix for the fifth schedule. Prefix name should be unique within the policy.
> schedule1 |  | string | First schedule to be added inside the policy. Atleast one schedule has to be added to create a policy.
> schedule2 |  | string optional | Second schedule to be added inside the policy.
> schedule3 |  | string optional | Third schedule to be added inside the policy.
> schedule4 |  | string optional | Fourth schedule to be added inside the policy.
> schedule5 |  | string optional | Fifth schedule to be added inside the policy.
> snapmirror-label1 |  | string optional | Label for SnapMirror Operations for first schedule. Maximum length of this field is 31 characters.
> snapmirror-label2 |  | string optional | Label for SnapMirror Operations for second schedule. Maximum length of this field is 31 characters.
> snapmirror-label3 |  | string optional | Label for SnapMirror Operations for third schedule. Maximum length of this field is 31 characters.
> snapmirror-label4 |  | string optional | Label for SnapMirror Operations for fourth schedule. Maximum length of this field is 31 characters.
> snapmirror-label5 |  | string optional | Label for SnapMirror Operations for fifth schedule. Maximum length of this field is 31 characters.

> Errno | Description
> EOBJECTNOTFOUND |  |
> EINTERNALERROR |  |
> EINVALIDINPUTERROR |  |
> EOPNOTSUPPORTED |  |

snapshot-policy-delete | [top]

> Delete the specified Snapshot Scheduling Policy

> Input Name | Range | Type | Description
> policy |  | snapshot-policy | A human readable string describing the name of the snapshot scheduling policy.

> Errno | Description
> EOBJECTNOTFOUND |  |
> EINVALIDINPUTERROR |  |
> EINTERNALERROR |  |
> EOPNOTSUPPORTED |  |

snapshot-policy-get | [top]

> Get Information about a single Snapshot Policy

> Input Name | Range | Type | Description
> desired-attributes |  | snapshot-policy-info optional | Specify the attributes that should be returned. If not present, all attributes for which information is available will be returned. If present, only the desired attributes for which information is available will be returned.
> policy |  | snapshot-policy | A human readable string describing the name of the snapshot scheduling policy.
> Output Name | Range | Type | Description
> attributes |  | snapshot-policy-info | The attributes of the snapshot.

> Errno | Description
> EOBJECTNOTFOUND |  |
> EINVALIDINPUTERROR |  |

snapshot-policy-get-iter | [top]

> Get Information about multiple Snapshot Policies

> Input Name | Range | Type | Description
> desired-attributes |  | snapshot-policy-info optional | Specify the attributes that should be returned. If not present, all attributes for which information is available will be returned. If present, only the desired attributes for which information is available will be returned.
> max-records | [1..2^32-1] | integer optional | The maximum number of records to return in this call. Default: 20
> query |  | snapshot-policy-info optional | A query that specifies which objects to return. A query could be specified on any number of attributes in the snapshot object. All snapshot objects matching this query up to 'max-records' will be returned.
> tag |  | string optional | Specify the tag from the last call. It is usually not specified for the first call. For subsequent calls, copy values from the 'next-tag' obtained from the previous call.
> Output Name | Range | Type | Description
> attributes-list |  | snapshot-policy-info[] optional | The list of attributes of snapshot objects.
> next-tag |  | string optional | Tag for the next call. Not present when there are no more snapshot objects to return.
> num-records | [0..2^32-1] | integer | The number of records returned in this call.

> Errno | Description
> EOBJECTNOTFOUND |  |
> EINVALIDINPUTERROR |  |

snapshot-policy-modify | [top]

> Enable or Disable the specified Snapshot Scheduling Policy

> Input Name | Range | Type | Description
> enabled |  | boolean | The state of the snapshot policy. If true, the snapshot policy is enabled and scheduled snapshots will be created on the volume associated with this policy.
> policy |  | string | A human readable string describing the name of the snapshot scheduling policy.

> Errno | Description
> EOBJECTNOTFOUND |  |
> EINVALIDNPUTERROR |  |
> EINTERNALERROR |  |
> EOPNOTSUPPORTED |  |

snapshot-policy-modify-schedule | [top]

> Modify a snapshot policy

> Input Name | Range | Type | Description
> new-count | [0..255] | integer optional | The new retention count for the schedule.
> new-snapmirror-label |  | string optional | The new SnapMirror Label for the schedule. This label will be used to define vaulting policies at a vault destination. If an empty label is specified, the existing label will be deleted. The maximum length of this field is 31 characters
> policy |  | snapshot-policy | A human readable string describing the name of the snapshot scheduling policy.
> schedule |  | string | A human readable string describing the name of a schedule whose retention count will be modified. Maximum length of this field can be 255 characters. The schedule name can be any one of the reserved schedules like 'hourly','weekly' or 'daily' or it can be user created schedule.

> Errno | Description
> EOBJECTNOTFOUND |  |
> EINTERNALERROR |  |
> EINVALIDINPUTERROR |  |
> EOPNOTSUPPORTED |  |

snapshot-policy-remove-schedule | [top]

> Remove a snapshot schedule from policy

> Input Name | Range | Type | Description
> policy |  | snapshot-policy | A human readable string describing the name of the snapshot scheduling policy.
> schedule |  | string | A human readable string describing the name of a schedule which will be removed from the snapshot policy. Maximum length of this field can be 255 characters. The schedule name can be any one of the reserved schedules like 'hourly','weekly' or 'daily' or it can be a user created schedule.

> Errno | Description
> EOBJECTNOTFOUND |  |
> EINTERNALERROR |  |
> EINVALIDINPUTERROR |  |

snapshot-reclaimable-info | [top]

> Returns the amount of space that would be freed when a set of snapshots are deleted from a specified volume.

> Input Name | Range | Type | Description
> snapshots |  | snapshot-name[] | List of snapshots. A maximum of 255 snapshots can be listed.
> volume |  | string | Name of the volume on which the snapshot reclaimable space info is to be collected.
> Output Name | Range | Type | Description
> reclaimable-size |  | integer | Size in bytes of space reclaimable if the snapshots were deleted. Range : [0 - 2^63-1].

> Errno | Description
> ESNAPSHOTDOESNOTEXIST |  |
> ESNAPSHOTTOOMANY |  |
> ESNAPSHOTCORRUPT |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMEMOUNTING |  |
> EVOLUMEOFFLINE |  |
> EVOLUMEBUSY |  |
> EVSERVERNOTFOUND |  |
> EOPNOTSUPPORTED |  |
> EINTERNALERROR |  |
> EINVALIDINPUTERROR |  |
> EAGGRFAILINGOVER |  |
> EAGGRRELOCATING |  |

> Vfiler-enabled
> Yes

snapshot-rename | [top]

> Rename a specified snapshot to a new name on a specified volume. This API is not supported on Infinite Volume constituents.

> Input Name | Range | Type | Description
> current-name |  | string | Name of snapshot to be renamed.
> new-name |  | string | New name of snapshot as a result of the rename.
> volume |  | string | Name of the volume where the current snapshot and the new snapshot are located.

> Errno | Description
> EVOLUMEBUSY |  |
> EVSERVERNOTFOUND |  |
> EOPNOTSUPPORTED |  |
> EOBJECTNOTFOUND |  |
> EINVALIDINPUTERROR |  |
> ESNAPSHOTDOESNOTEXIST |  |
> ESNAPSHOTEXISTS |  |
> EVOLUME_TYPE_NOT_SUPPORTED |  |
> EAGGRRELOCATING |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> ESNAPSHOTACSLOCKED |  |

> Vfiler-enabled
> Yes

snapshot-reserve-list-info | [top]

> Gets the percentage of disk space that is reserved for snapshots in the indicated volume. If no volume is specified, this will return the percentage of disk space reserved for snapshots for each of the volumes in the system. Reserve space can be used only by snapshots and not by the active file system. This API is deprecated in Data ONTAP Cluster-Mode 8.2 and later. Use volume-get-iter instead.

> Input Name | Range | Type | Description
> volume |  | string optional | Volume to get percentage of space reserved for snapshots.
> Output Name | Range | Type | Description
> snapshot-reserve-details |  | snapshot-reserve-detail-info[] | List of volumes along with their snapshot space reservation configuration.

> Errno | Description
> EVOLUMEDOESNOTEXIST |  |
> EVSERVERNOTFOUND |  |
> EVOLUMEBUSY |  |
> EOPNOTSUPPORTED |  |
> EINTERNALERROR |  |
> EINVALIDINPUTERROR |  |
> EOBJECTNOTFOUND |  |
> EAGGRRELOCATING |  |

> Vfiler-enabled
> Yes

snapshot-restore-file | [top]

> Reverts a single file to a revision from a specified snapshot. The volume used for restoring the file must be online and must not be a mirror. Files other than normal files and LUNs are not restored. This includes directories (and their contents), and files with NT streams. Compressed files will not be restored in Data ONTAP 7-mode, though compression may be enabled on the volume. If there is not enough space in the volume, the single file snap restore will not start. If the file already exists (in the active filesystem), it will be overwritten with the version in the snapshot. Exclusive oplocks and hard exclusive locks like the DOS compatibility lock will be invalidated. Other single file snap restores can be executed concurrently. Also it is possible for the single file snap restore to be aborted if we run out of disk space during the operation. When this happens the timestamp of the file being restored will be updated. Thus it will not be the same as the timestamp of the file in the snapshot. For normal files, an in-progress restore can be aborted by removing the file. For NFS users, the last link to the file must be removed. For all restored files, the snapshot used for the restore cannot be deleted. New snapshots cannot be created while a single-file snaprestore is in progress. Scheduled snapshots on the volume will be suspended for the duration of the restore. Tree, user and group quota limits are not enforced for the owner, group and tree in which the file is being restored. Thus if the user, group or tree quotas are exceeded, /etc/quotas will need to be altered after the single file snap restore operation has completed. Then quota resize will need to be run. When the restore completes, the file's attributes (size, permissions, ownership, etc.) should be identical as those in the snapshot. If the system is halted or crashes while a single file snap restore is in progress then the operation will be restarted on reboot. A volume cannot have both a volume snaprestore and a single-file snaprestore executing simultaneously. Multiple single-file snaprestores can be in progress simultaneously. The following applies to Data ONTAP 7-mode only: For normal files while the restore is proceeding, any operation which tries to change the file will be suspended until the restore is done. It could take up to several minutes for before the API invocation returns. Once the invocation returns, the file restore will proceed in the background. The restore may take a long time to complete depending on the size of the file being restored. The file is unavailable for use during this time. For LUNs that are restored over top of their existing LUN, a LUN clone can be created that is backed by the snapshot being restored from and then the clone is split. For LUNs that are restored over top of their existing LUN, an in-progress restore can be aborted by using lun-clone-stop when in Data ONTAP 7-mode. The restored LUN will still be a clone in this case and it will still be partially backed by the snapshot it was restored from. Snapshots are disabled during restore due to space efficient LUN clone split. In order to disable space efficient split during restore set the optional parameter space-efficient-split-disabled. While the restore is proceeding the LUN is available and I/O (both reads and writes) is permitted. Data that is modified in the LUN while the restore is proceeding will not be overwritten by the restore process. The restore may take a long time to complete depending on the size of the LUN being restored. Use lun-clone-status-list-info to see the progress of the LUN restore.

> Input Name | Range | Type | Description
> path |  | string | Path of the file to restore. Path syntax has two forms: /vol// / In the latter case (relative path), if volume was not specified, the root volume will be used.
> restore-path |  | string optional | Path to restore to. The path must be a full path to a filename, and must be in the same volume as the volume used for the restore. If not specified, restore-path is defaulted to the original path.
> snapshot |  | string | Name of snapshot to restore from. Snapshot must be from same volume as the file to restore.
> snapshot-instance-uuid |  | string optional | A unique physical version identifier for a given snapshot within a volume or an aggregate. A typical snapshot instance UUID will look like: c0335624-21f3-450c-aea1-55884d0218b9
> space-efficient-split-disabled |  | boolean optional | By default 'false', space-efficient LUN clone split is allowed during restore. This parameter, if set to 'true', disables space-efficient splitting for this specific operation.
> volume |  | string optional | Volume to restore to/from. If this is passed in, the path argument should be relative to the volume.

> Errno | Description
> EVSERVERNOTFOUND |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EONTAPI_EVOLOPNOTSUPP |  |
> EINTERNALERROR |  |
> EOBJECT_NOT_FOUND |  |
> EVOLUMEDOESNOTEXIST |  |
> EONTAPI_EBUSY |  |
> EINVALIDINPUTERROR |  |
> EVOLUMEBUSY |  |
> EAGGRRELOCATING |  |
> EVSERVER_OP_NOT_ALLOWED |  |

> Vfiler-enabled
> Yes

> License
> snaprestore

snapshot-restore-file-info | [top]

> Get information about snapshot file restores on a given vserver. Returns maximum snapshot file restores limit and snapshot file restores in progress numbers.

> Output Name | Range | Type | Description
> max-sfsr-limit |  | integer | The maximum number of parallel single file snapshot restores (SFSR) allowed on a filer.
> sfsr-in-progress |  | integer | Number of single file snapshot restores (SFSR) in progress on a filer.

> Errno | Description
> EVERSERVERNOTFOUND |  |
> EVOLUMEBUSY |  |
> EVSERVER_OP_NOT_ALLOWED |  |

> Vfiler-enabled
> Yes

> License
> snaprestore

snapshot-restore-volume | [top]

> Reverts a volume to a specified snapshot. The volume must be online and must not be a mirror. If reverting the root volume, the filer will be rebooted. Non-root volumes do not require a reboot. A volume cannot have both a volume snaprestore and a single-file snaprestore executing simultaneously. Multiple single-file snaprestores can be in progress simultaneously. After the reversion, the volume is in the same state as it was when the snapshot was taken. This API is not supported on Infinite Volume.

> Input Name | Range | Type | Description
> preserve-lun-ids |  | boolean optional | When this field is specified, LUNs in the volume being restored will remain mapped and their identities preserved such that host connectivity will not be disrupted during the restore operation. I/O's to the LUN will be fenced during the restore operation by placing the LUNs in an unavailable state. Once the restore operation has completed, hosts will be able to resume I/O access to the LUNs. The default value is false.
> snapshot |  | string | Name of snapshot to restore from.
> snapshot-instance-uuid |  | UUID optional | The 128 bit unique snapshot identifier expressed in the form of UUID. This field is optional and can appear together with 'snapshot' to uniquely identify a snapshot to restore. If this field is provided, 'snapshot' is a required parameter. An example of an actual UUID is: 84a010ec-3d28-11df-84e8-123478653412
> volume |  | string | Name of volume to restore.

> Errno | Description
> EVOLUMEDOESNOTEXIST |  |
> EINVALIDINPUTERROR |  |
> EOPNOTSUPPORTED |  |
> EONTAPI_EWORMVOLSLC |  |
> EVOLUMEBUSY |  |
> EVSERVERNOTFOUND |  |
> EOBJECTNOTFOUND |  |
> ESNAPSHOTDOESNOTEXIST |  |
> EOPNOTSUPPORTED |  |
> EAGGRRELOCATING |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EOP_DISALLOWED_DURING_TAKEOVER |  |

> Vfiler-enabled
> Yes

> License
> snaprestore

snapshot-restore-volume-async | [top]

> Reverts an Infinite Volume to a specified snapshot. The Infinite Volume must be online and unmounted and must not be a mirror. After the reversion, the Infinite Volume is in the same state as it was when the snapshot was taken. This API is not supported on flexible volumes and Infinite Volume constituents.

> Input Name | Range | Type | Description
> snapshot |  | string | Name of snapshot to restore from.
> snapshot-instance-uuid |  | UUID optional | The 128 bit unique snapshot identifier expressed in the form of UUID. This field is optional and can appear together with 'snapshot' to uniquely identify a snapshot to restore. If this field is provided, 'snapshot' is a required parameter. An example of an actual UUID is: 84a010ec-3d28-11df-84e8-123478653412
> volume |  | string | Name of Infinite Volume to restore.
> Output Name | Range | Type | Description
> result-error-code | [0..2^32-1] | integer optional | Error code, if the operation caused an error.
> result-error-message |  | string optional | Error description, if the operation caused an error.
> result-jobid | [0..2^64-1] | integer optional | Job Id, if this operation was performed via a job.
> result-status |  | string | The operation status. Possible values: "succeeded", "in_progress", "failed".

> Errno | Description
> EVOLUMEDOESNOTEXIST |  |
> EINVALIDINPUTERROR |  |
> EOPNOTSUPPORTED |  |
> EONTAPI_EWORMVOLSLC |  |
> EVOLUMEBUSY |  |
> EVSERVERNOTFOUND |  |
> EOBJECTNOTFOUND |  |
> ESNAPSHOTDOESNOTEXIST |  |
> EOPNOTSUPPORTED |  |
> EVOLUME_TYPE_NOT_SUPPORTED |  |

> License
> snaprestore

snapshot-set-reserve | [top]

> Sets the size of the indicated volume's snapshot reserve to the specified percentage. Reserve space can be used only by snapshots and not by the active file system.

> Input Name | Range | Type | Description
> percentage |  | integer | Percentage to set. Range [0-100].
> volume |  | string | Name of volume on which to set the snapshot space reserve.

> Errno | Description
> EVOLUMEDOESNOTEXIST |  |
> EINVALIDINPUTERROR |  |
> EVOLUMECREATING |  |
> EVOLUMENOTONLINE |  |
> EVOLUMEBUSY |  |
> EONTAPI_ENOSPC |  |
> EVSERVERNOTFOUND |  |
> EOBJECTNOTFOUND |  |
> EOPNOTSUPPORTED |  |
> EAGGRRELOCATING |  |
> EVSERVER_OP_NOT_ALLOWED |  |

> Vfiler-enabled
> Yes

snapshot-volume-info | [top]

> Returns snapshot related volume information. The information returned is valid at the time the API call reached the filer and maybe outdated soon after.

> Input Name | Range | Type | Description
> volume |  | string | Name of the volume on which the space needs to be checked.
> Output Name | Range | Type | Description
> size-available |  | integer | Total bytes that when exhausted will disable us from taking snapshots. If this value is 0, snapshots cannot be taken. Any other value would allow us to take a reliable snapshot. This space may or may not get exhausted by taking a snapshot. Also it may get used by writes/allocations in the volume. This is not equal to the free space in the active file system or anyway related to the size of the next snapshot. Range : [0..2^64-1].

> Errno | Description
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMEOFFLINE |  |
> EVOL_RESTRICTED |  |
> EVOLUMEBUSY |  |
> EVSERVERNOTFOUND |  |
> EOPNOTSUPPORTED |  |
> E_VOLUME_INACCESSIBLE |  |
> EAGGRRELOCATING |  |

> Vfiler-enabled
> Yes

Element definition: UUID | [top]

> The 128-bit universally-unique identifier (UUID). UUIDs are formatted as 36-character strings. These strings are composed of 32 hexadecimal characters broken up into five groupings separated by '-'s.The first grouping has 8 hex characters, the second through fourth groupings have four hex characters each, and the fifth and final grouping has 12 hex characters. Note that a leading '0x' is not used. An example of an actual UUID is: 73a010ec-3d28-11df-84e8-123478563412

> [none]

Element definition: snapshot-autodelete-info | [top]

> Option name and value.

> Name | Range | Type | Description
> option-name |  | string | Option key. Possible values: "state" (value: "on" | "off") "commitment" (value: "try" | "disrupt") "trigger" (value: "volume" | "snap_reserve" | "space_reserve") "target_free_space" (value: < number >) "delete_order" (value: newest_first | oldest_first) "defer_delete" (value: scheduled | user_created | prefix | none) "destroy_list" (value: < user-defined >) "prefix" (value: < string >)
> option-value |  | string | Option value.

Element definition: snapshot-id | [top]

> Snapshot Id

> [none]

Element definition: snapshot-info | [top]

> One snapshot contained in the specified volume. This type is used by snapshot-get-iter, snapshot-modify-iter and snapshot-list-info ZAPIs. When using this type to modify snapshot information, every field except snapmirror-label is non-modifiable.

> Name | Range | Type | Description
> access-time |  | integer optional | The volume access time when the snapshot was created in seconds since Jan 1, 1970. This value will not change even if the snapshot is accessed.
> busy |  | boolean optional | True if the snapshot is being used by an application.
> contains-lun-clones |  | boolean optional | This snapshots contains lun clones. If true, this snapshot contains lun clones. This is available only if the 'lun-clone-snapshot' option is specified.
> cumulative-percentage-of-total-blocks |  | integer optional | Percentage of blocks owned by this snapshot and all more recent snapshots, relative to the total number of blocks in the volume. Not returned for Infinite Volumes.
> cumulative-percentage-of-used-blocks |  | integer optional | Percentage of blocks owned by this snapshot and all more recent snapshots, relative to the number of blocks currently used in the volume. Not returned for Infinite Volumes.
> cumulative-total |  | integer optional | Cumulative total of 1024 byte blocks of this snapshot and previous snapshots. If the "terse" input is true, this value is omitted.
> dependency |  | string optional | Application(s) dependent on this snapshot. Possible values include "snapmirror", "snapvault", "dump", "vclone", "LUNs", "snaplock". Comma separated if more than one application depends on this snapshot.
> is-7-mode-snapshot |  | boolean optional | True if the snapshot is a 7-mode snapshot.
> is-constituent-snapshot |  | boolean optional | True if the snapshot is a constituent snapshot.
> name |  | string optional | Name of the snapshot to be listed.
> percentage-of-total-blocks |  | integer optional | Percentage of blocks owned by this snapshot, relative to the total number of blocks in the volume.
> percentage-of-used-blocks |  | integer optional | Percentage of blocks owned by this snapshot, relative to the number of blocks currently used in the volume.
> snapmirror-label |  | string optional | A human readable SnapMirror Label attached with the snapshot. Size of the label can be at most 31 characters. This label will be used by the vaulting system to identify a vaulting scheme.
> snapshot-instance-uuid |  | UUID optional | The 128 bit unique snapshot identifier expressed in the form of UUID. This field uniquely identifies the snapshot's physical data layout.
> snapshot-owners-list |  | snapshot-owner[] optional | The list of owners of a busy snapshot.
> snapshot-version-uuid |  | UUID optional | The 128 bit unique snapshot identifier expressed in the form of UUID. This field uniquely identifies the snapshot's logical data layout.
> state |  | string optional | The state of the snapshot. Possible values: 'valid' ... The snapshot is complete and consistent 'invalid' ... The namespace constituent snapshot is missing 'partial' ... One or more data constituent snapshots are missing Only a snapshot on an Infinite Volume can have a state of partial or invalid. The default value is valid.
> total |  | integer optional | Number of 1024 byte blocks in the snapshot. If the "terse" input is true, this value is omitted.
> volume-provenance-uuid |  | UUID optional | Provenance UUID of the volume at the time the snapshot was created. Refer to the volume-get-iter API for a description of the volume provenance UUID.

Element definition: snapshot-modify-iter-info | [top]

> Information about the modify operation that was attempted/performed against snapshot object.

> Name | Range | Type | Description
> error-code | [0..2^32-1] | integer optional | Error code, if the modify operation caused an error.
> error-message |  | string optional | Error description, if the modify operation caused an error.
> snapshot-key |  | snapshot-info | The keys for the snapshot object to which the modify operation applies.

Element definition: snapshot-multirename-error | [top]

> Information of the error details for snapshot multirename operation When returned as part of the output, all elements of this typedef are reported, unless limited by a set of desired attributes specified by the caller. When used as input to specify desired attributes to return, omitting a given element indicates that it shall not be returned in the output. In contrast, by providing an element (even with no value) the caller ensures that a value for that element will be returned, given that the value can be retrieved. When used as input to specify queries, any element can be omitted in which case the resulting set of objects is not constrained by any specific value of that attribute.

> Name | Range | Type | Description
> error-number | [0..2^32-1] | integer optional | Error code due to which snapshot rename failed on a volume. Attributes: non-creatable, non-modifiable
> error-reason |  | string optional | Error reason due to which snapshot rename failed on a volume. Attributes: non-creatable, non-modifiable
> volume-name |  | string optional | Volume name on which snapshot rename failed. Attributes: non-creatable, non-modifiable

Element definition: snapshot-name | [top]

> Name of snapshot.

> [none]

Element definition: snapshot-policy | [top]

> Snapshot Policy

> [none]

Element definition: snapshot-policy-info | [top]

> A typedef containing information about the Snapshot Scheduling Policies. When returned as part of the output, all elements of this typedef are reported, unless limited by a set of desired attributes specified by the caller. When used as input to specify desired attributes to return, omitting a given element indicates that it shall not be returned in the output. In contrast, by providing an element (even with no value) the caller ensures that a value for that element will be returned, given that the value can be retrieved. When used as input to specify queries, any element can be omitted in which case the resulting set of objects is not constrained by any specific value of that attribute.

> Name | Range | Type | Description
> comment |  | string optional | A human readable description associated with the snasphot policy. The maximum length of this field can be 255 characters. Attributes: optional-for-create, modifiable
> enabled |  | boolean optional | The state of the snapshot policy. If true, the snapshot policy is enabled and scheduled snapshots will be created on the volume associated with this policy. Attributes: required-for-create, modifiable
> policy |  | snapshot-policy optional | A human readable string describing the name of the snapshot scheduling policy. Attributes: key, required-for-create, non-modifiable
> policy-owner |  | string optional | Owner of the policy Attributes: non-creatable, non-modifiable
> snapshot-policy-schedules |  | snapshot-schedule-info[] optional | Information about individual snapshot schedules
> total-schedules | [0..5] | integer optional | Total Number of Schedules in this Policy Attributes: non-creatable, non-modifiable
> vserver-name |  | vserver-name optional | Vserver Name Attributes: key, non-creatable, non-modifiable

Element definition: snapshot-reserve-detail-info | [top]

> Information about a volume's snapshot space reservation configuration.

> Name | Range | Type | Description
> percentage |  | integer | Percentage of volume reserved for snapshots. Range : [0 - 100].
> size |  | integer | Size in bytes of volume reserved for snapshots. Range : [0 - 2^64-1].
> volume |  | string | Name of volume.

Element definition: volume-error | [top]

> The error code of a given volume.

> Name | Range | Type | Description
> errno |  | integer optional | The error code of the snapshot operation for a given volume. It is returned only when an error is found.
> name |  | volume-name | Name of a volume.
> reason |  | string optional | Description of the error. It is returned only when an error is found.
> vserver |  | string optional | Virtual server containing the volume.

Element definition: volume-is-snapcreated | [top]

> The status of the snapshot creation for a given volume.

> Name | Range | Type | Description
> is-snapcreated |  | boolean | TRUE means a snapshot has been created for the volume.
> name |  | volume-name | Name of a volume.

Element definition: volume-name | [top]

> The name of the volume. Volume names can contain letters, numbers, and the underscore character (_). The first character must be a letter or an underscore. When creating a Cluster-Mode volume, the user can specify at most 203 characters. If the prefix '/vol/' appears in the volume name, it is striped out and the characters that follow the prefix constitute the actual volume name. Volume names are scoped by their owning Vserver in a cluster, with each Vserver's volume namespace being totally independent. Thus, any Vserver 'S' in a cluster cannot have two volumes with the same name 'V'. However, two different Vservers in the same cluster can each have a volume named 'V'. For example, any given Vserver in a cluster can only have at most one volume named 'vol0'. However, two different Vservers S1 and S2 in the cluster may each have a volume named 'vol0'.

> [none]

Element definition: UUID | [top]

> The 128-bit universally-unique identifier (UUID). UUIDs are formatted as 36-character strings. These strings are composed of 32 hexadecimal characters broken up into five groupings separated by '-'s.The first grouping has 8 hex characters, the second through fourth groupings have four hex characters each, and the fifth and final grouping has 12 hex characters. Note that a leading '0x' is not used. An example of an actual UUID is: 73a010ec-3d28-11df-84e8-123478563412

> [none]

Element definition: snapshot-info | [top]

> One snapshot contained in the specified volume. This type is used by snapshot-get-iter, snapshot-modify-iter and snapshot-list-info ZAPIs. When using this type to modify snapshot information, every field except snapmirror-label is non-modifiable.

> Name | Range | Type | Description
> access-time |  | integer optional | The volume access time when the snapshot was created in seconds since Jan 1, 1970. This value will not change even if the snapshot is accessed.
> busy |  | boolean optional | True if the snapshot is being used by an application.
> contains-lun-clones |  | boolean optional | This snapshots contains lun clones. If true, this snapshot contains lun clones. This is available only if the 'lun-clone-snapshot' option is specified.
> cumulative-percentage-of-total-blocks |  | integer optional | Percentage of blocks owned by this snapshot and all more recent snapshots, relative to the total number of blocks in the volume. Not returned for Infinite Volumes.
> cumulative-percentage-of-used-blocks |  | integer optional | Percentage of blocks owned by this snapshot and all more recent snapshots, relative to the number of blocks currently used in the volume. Not returned for Infinite Volumes.
> cumulative-total |  | integer optional | Cumulative total of 1024 byte blocks of this snapshot and previous snapshots. If the "terse" input is true, this value is omitted.
> dependency |  | string optional | Application(s) dependent on this snapshot. Possible values include "snapmirror", "snapvault", "dump", "vclone", "LUNs", "snaplock". Comma separated if more than one application depends on this snapshot.
> is-7-mode-snapshot |  | boolean optional | True if the snapshot is a 7-mode snapshot.
> is-constituent-snapshot |  | boolean optional | True if the snapshot is a constituent snapshot.
> name |  | string optional | Name of the snapshot to be listed.
> percentage-of-total-blocks |  | integer optional | Percentage of blocks owned by this snapshot, relative to the total number of blocks in the volume.
> percentage-of-used-blocks |  | integer optional | Percentage of blocks owned by this snapshot, relative to the number of blocks currently used in the volume.
> snapmirror-label |  | string optional | A human readable SnapMirror Label attached with the snapshot. Size of the label can be at most 31 characters. This label will be used by the vaulting system to identify a vaulting scheme.
> snapshot-instance-uuid |  | UUID optional | The 128 bit unique snapshot identifier expressed in the form of UUID. This field uniquely identifies the snapshot's physical data layout.
> snapshot-owners-list |  | snapshot-owner[] optional | The list of owners of a busy snapshot.
> snapshot-version-uuid |  | UUID optional | The 128 bit unique snapshot identifier expressed in the form of UUID. This field uniquely identifies the snapshot's logical data layout.
> state |  | string optional | The state of the snapshot. Possible values: 'valid' ... The snapshot is complete and consistent 'invalid' ... The namespace constituent snapshot is missing 'partial' ... One or more data constituent snapshots are missing Only a snapshot on an Infinite Volume can have a state of partial or invalid. The default value is valid.
> total |  | integer optional | Number of 1024 byte blocks in the snapshot. If the "terse" input is true, this value is omitted.
> volume-provenance-uuid |  | UUID optional | Provenance UUID of the volume at the time the snapshot was created. Refer to the volume-get-iter API for a description of the volume provenance UUID.

Element definition: snapshot-owner | [top]

> owner of a busy snapshot

> Name | Range | Type | Description
> owner |  | string | Name of the owner of a busy snapshot

Element definition: snapshot-policy | [top]

> Snapshot Policy

> [none]

Element definition: snapshot-schedule-info | [top]

> Information about individual snapshot schedules

> Name | Range | Type | Description
> count | [0..2^32-1] | integer optional | Maximum number of snapshots to retain for the schedule present in the snapshot policy. Attributes: non-creatable, non-modifiable
> prefix |  | string optional | Snapshot name prefix for the schedule present in the snapshot policy. Prefix will be used in the snapshot name instead of the schedule name. If prefix is not provided, schedule name will be used in the snapshot name. For eg, if the prefix name 'hourly-even' is assigned to the schedule name 'hourly' then the snapshot name will look like 'hourly-even.2010-05-10_0205'. If no prefix is associated with the schedule 'hourly' then prefix will be set to 'hourly' as the default value. Attributes: non-creatable, non-modifiable
> schedule |  | string optional | A human readable string describing the name of a schedule present in the snapshot policy. Maximum length of this field can be 255 characters. The schedule name can be any one of the reserved schedules like 'hourly', 'weekly','daily' or it can be a user created schedule. Attributes: non-creatable, non-modifiable
> snapmirror-label |  | string optional | Snapshot SnapMirror Label for the schedule present in the snapshot policy. The value specified will be added as an attribute to the snapshot created by the schedule. The maximum length of this field is 31 characters Attributes: required-for-create, modifiable

Element definition: vserver-name | [top]

> The name of the Vserver.

> [none]

Element definition: UUID | [top]

> The 128-bit universally-unique identifier (UUID). UUIDs are formatted as 36-character strings. These strings are composed of 32 hexadecimal characters broken up into five groupings separated by '-'s.The first grouping has 8 hex characters, the second through fourth groupings have four hex characters each, and the fifth and final grouping has 12 hex characters. Note that a leading '0x' is not used. An example of an actual UUID is: 73a010ec-3d28-11df-84e8-123478563412

> [none]