APIs in Category: volume | 7-Mode API version 1.20

volume-add volume-autosize-get volume-autosize-set volume-charmap-get volume-charmap-set volume-clone-create volume-clone-split-estimate volume-clone-split-start volume-clone-split-status volume-clone-split-stop volume-container volume-create volume-destroy volume-footprint-list-info volume-footprint-list-info-iter-end volume-footprint-list-info-iter-next volume-footprint-list-info-iter-start volume-get-filer-info volume-get-language volume-get-root-name volume-get-supported-guarantees volume-list-info volume-list-info-iter-end volume-list-info-iter-next volume-list-info-iter-start volume-mediascrub-list-info volume-mirror volume-move-abort volume-move-cutover volume-move-pause volume-move-resume volume-move-start volume-move-status volume-offline volume-online volume-options-list-info volume-rename volume-restrict volume-scrub-list-info volume-scrub-resume volume-scrub-start volume-scrub-stop volume-scrub-suspend volume-set-language volume-set-option volume-set-total-files volume-size volume-space-list-info volume-space-list-info-iter-end volume-space-list-info-iter-next volume-space-list-info-iter-start volume-split volume-verify-list-info volume-verify-resume volume-verify-start volume-verify-stop volume-verify-suspend volume-wafl-info

NetApp Manage ONTAP

volume-add | [top]

> Adds disks to the given traditional volume. Specify the disks to add in the same way as for 'volume-create'. Disks cannot be added to a mirrored traditional volume if one of its plexes is offline. Addition of the specified disk(s) may not have completed by the time the API returns. Use 'volume-list-info' to query the traditional volume's status, and thus determine when the disk addition is complete. It is not possible to add disks directly to a flexible volume; if that is the goal, then consider using 'volume-container' to find the flexible volume's containing aggregate, then use 'aggr-add' to add the desired disks there (which, of course, will make their storage available to all flexible volumes contained in that same aggregate).

> Input Name | Range | Type | Description
> disk-count |  | integer optional | Number of disks to add, including parity disks. The disks will come from the spare pool. The smallest disks in the spare pool join the volume first, unless "disk-size" is specified as an argument. Range : [0..2^31-1].
> disk-size |  | integer optional | The disk size in 4KB blocks. Disks that are within approximately 20% of the specified size are selected for use in the traditional volume. If neither the "disk-size" nor the "disk-size-with-unit" is specified, the smallest disks in the spare pool join the traditional volume first. This option is ignored if a specific list of disks to use is provided via the "disks" argument. Range : [0..2^31-1]. You must only use one of either "disk-size" or "disk-size-with-unit" parameters. If both appear, an error message will be returned.
> disk-size-with-unit |  | string optional | The disk size in specified unit. It is a positive integer number followed by unit of "T", "G", "M" or "K". This option is ignored if a specific list of disks to use is provided via the "disks" argument. You must only use one of either "disk-size" or "disk-size-with-unit" parameters. If both appear, an error message will be returned.
> disks |  | disk-info[] optional | Specific list of disks to add to the traditional volume. If the traditional volume is mirrored and a specific disk list is supplied, another list ("mirror-disks") must also be supplied with the same number of disks.
> force |  | boolean optional | Disks in a plex are not permitted to span spare spare pools. This behavior is overridden with this option when it is set to "true".
> mirror-disks |  | disk-info[] optional | Specific list of mirror disks needed to accompany the list in the "disks" argument. This list must contain the same number of disks specified in "disks".
> raid-group |  | string optional | Specifies the RAID group (for example, 'rg0') to which the indicated disks are to be added. When a RAID group other than the last RAID group is specified, the traditional volume can no longer be reverted to a version of ONTAP prior to 6.2. In such a case, the "force" option must be specified as well. By default, the filer fills up one RAID group with disks before starting another RAID group. Suppose a traditional volume currently has one RAID group of 12 disks and its RAID group size is 14. If you add 5 disks to this traditional volume, it will have one RAID group with 14 disks and another RAID group with 3 disks. The filer does not evenly distribute disks among RAID groups.
> volume |  | string | Name of the traditional volume to which disks are to be added.
> Output Name | Range | Type | Description
> bad-disks |  | disk-info[] optional | List of disks that were not added. This is only returned if there are bad disks.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMERGINVALID |  |
> EINVALIDINPUTERROR |  |
> EVOLUMEDISKSIZEINVALID |  |
> EVOLUMEDISKDUP |  |
> EDISKTYPEWRONGFORVOL |  |

volume-autosize-get | [top]

> Given the name of a flexible volume, get the autosize settings. This API is not supported for Infinite Volumes.

> Input Name | Range | Type | Description
> volume |  | string | The name of the flexible volume for which we want to get autosize.
> Output Name | Range | Type | Description
> grow-threshold-percent |  | integer optional | The threshold capacity percentage at which the volume automatiacally grows. Range : [0..100]
> increment-size |  | string optional | The increment size by which the volume would be grown, in kbytes.
> is-enabled |  | boolean | This element is deprecated in Data ONTAP 8.2 and later. Please use autosize-mode instead. When this parameter is 'true', the 'grow' autosize mode is in effect, while 'false' means that the autosize mode to 'off'.
> maximum-size |  | string | The maximum size to which the volume would be grown automatically, in kbytes.
> minimum-size |  | string optional | The minimum size to which the volume would be shrunk automatically, in kbytes.
> mode |  | string optional | The operating mode of autosize. Valid values are "grow", "grow_shrink", and "off".
> shrink-threshold-percent |  | integer optional | The threshold capacity percentage at which the volume automatically shrinks. Range : [0..100]

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMEBUSY |  |
> EVSERVERNOTFOUND |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EOBJECTNOTFOUND |  |
> EMULTIPLEVOLSFOUND |  |
> EVOLUME_TYPE_NOT_SUPPORTED |  |

> Vfiler-enabled
> Yes

volume-autosize-set | [top]

> Given the name of a flexible volume, set the autosize settings. This API is not supported for Infinite Volumes.

> Input Name | Range | Type | Description
> grow-threshold-percent |  | integer optional | Specifies the percentage of the flexible volume's capacity at which autogrow is initiated. The default grow threshold varies from 85% to 98%, depending on the volume size. It is an error for the grow threshold to be less than or equal to the shrink threshold. Range : [0..100]
> increment-size |  | string optional | Specify the flexible volume's increment size using the following format < number > [k|m|g|t] The amount is the absolute size to set. The optional trailing 'k', 'm', 'g', and 't' indicates the desired units, namely 'kilobytes', 'megabytes', 'gigabytes', and 'terabytes' (respectively). If the trailing unit character doesn't appear, then < number > is interpreted as the number of bytes desired. The default value of increment size is 5%.
> is-enabled |  | boolean optional | This element is deprecated in Data ONTAP 8.2 and later. Please use autosize-mode instead. Setting this parameter to 'true' enables the 'grow' mode, while setting it to 'false' disables autosize and sets the autosize mode to 'off'. The default value is 'false'.
> maximum-size |  | string optional | Specify the flexible volume's maximum allowed size using the following format < number > [k|m|g|t] The amount is the absolute size to set. The optional trailing 'k', 'm', 'g', and 't' indicates the desired units, namely 'kilobytes', 'megabytes', 'gigabytes', and 'terabytes' (respectively). If the trailing unit character doesn't appear, then < number > is interpreted as the number of bytes desired. The default value is 20% greater than the volume size at the time autosize was enabled. It is an error for the maximum volume size to be less than the current volume size. It is also an error for the maximum size to be less than or equal to the minimum size.
> minimum-size |  | string optional | Specify the flexible volume's minimum allowed size using the following format < number > [k|m|g|t] The amount is the absolute size to set. The optional trailing 'k', 'm', 'g', and 't' indicates the desired units, namely 'kilobytes', 'megabytes', 'gigabytes', and 'terabytes' (respectively). If the trailing unit character doesn't appear, then < number > is interpreted as the number of bytes desired. The default value is the size of the volume at the time the 'grow_shrink' mode was enabled. It is an error for the minimum size to be greater than or equal to the maximum size.
> mode |  | string optional | Specify the flexible volume's autosize mode of operation. Valid values are "grow", "grow_shrink", and "off". The default mode is "off".
> reset |  | boolean optional | Sets the values of is-enabled, maximum size, increment-size, minimum-size, grow-threshold-percent, shrink-threshold-percent and mode to their defaults.
> shrink-threshold-percent |  | integer optional | Specifies the percentage of the flexible volume's capacity at which autoshrink is initiated. The default shrink theshold is 50%. It is an error for the shrink threshold to be greater than or equal to the grow threshold. Range : [0..100]
> volume |  | string | The name of the flexible volume for which we want to set autosize.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMEBUSY |  |
> EVSERVERNOTFOUND |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EOBJECTNOTFOUND |  |
> EMULTIPLEVOLSFOUND |  |
> EVOLUME_TYPE_NOT_SUPPORTED |  |

volume-charmap-get | [top]

> Return charmap information for a specified volume.

> Input Name | Range | Type | Description
> volume |  | string | Name of the volume on which to list the charmap information.
> Output Name | Range | Type | Description
> charmap |  | string optional |

> Errno | Description
> EVOLUMEDOESNOTEXIST |  |
> EOPNOTSUPPORTED |  |
> EVOLUMEBUSY |  |

> Vfiler-enabled
> Yes

volume-charmap-set | [top]

> Associate a charmap description with a specified volume.

> Input Name | Range | Type | Description
> charmap |  | string optional | Description of the character mapping to be done for this volume. This mapping is to allow CIFS clients to use NFS file names that would otherwise result in invalid CIFS names. The values are comma-separated pairs of hex character mappings. The A-F hex values can be in upper or lower case, and the values do not have to be padded. Example: "5c:f2e1,3c:b6,3e:ae,7C:394". If a value is not passed, any existing charmap will be removed.
> volume |  | string | Name of the volume with which the charmap is to be associated.

> Errno | Description
> EVOLUMEDOESNOTEXIST |  |
> EOPNOTSUPPORTED |  |
> ECHARMAP_INVALID |  |
> ECHARMAP_NO_PERSIST |  |
> EVOLUMEBUSY |  |

> Vfiler-enabled
> Yes

volume-clone-create | [top]

> Create a flexible volume that is a clone of a "backing" or "parent" flexible volume. A clone is a volume that is a writable snapshot of another volume. Initially, the clone and its parent share the same storage; more storage space is consumed only as one volume or the other changes. If a specific snapshot name within the parent volume is provided, it is chosen as the parent snapshot. Otherwise, the filer will create a new, distinctively- named snapshot in the parent volume for that purpose. The parent snapshot is locked in the parent volume, preventing its deletion until the clone is either destroyed or split from the parent using the 'volume-clone-split-start' command (see below). This command fails if the chosen parent volume is currently involved in a split operation. This command also fails if the chosen parent volume is a traditional volume. Cloning is a new capability that applies exclusively to flexible volumes.

> Input Name | Range | Type | Description
> force-worm-clone |  | boolean optional | If set to 'true', forces the creation of clone on a worm volume. If set to 'false', clone creation on any worm volume will fail, because clones of worm volumes are not deletable until all the inherited worm files on newly created clone have expired. Default value is false.
> parent-snapshot |  | string optional | Name of the snapshot within 'parent-volume' that is to serve as the parent snapshot for the clone. If not provided, the filer will create a new snapshot named 'clone_parent_' (using a freshy-generated UUID) in 'parent-volume' for this purpose.
> parent-volume |  | string | Name of the parent flexible volume for the clone.
> qos-policy-group-name |  | string optional | The QoS Policy Group Name that is to be associated with this FlexClone volume in order to enforce Service Level Objectives (SLO). If you do not assign a QoS policy group to a volume, the system will not monitor and control the traffic to it. Note that "none" is a reserved keyword used to remove the association of a storage object to a QoS policy group. Specifying "none" as a QoS policy group in this command would have no effect.
> space-reserve |  | string optional | Specifies the type of volume guarantee for the clone. Possible values: none, file, volume. If this argument is not provided, then guarantee type is inherited from parent volume.
> volume |  | string | Desired name of the clone.
> volume-type |  | string optional | The type of the volume to be created. Possible values: "rw" - read-write volume (default setting), "dp" - data-protection volume If not provided, the filer will assume the default value i.e. "rw" volume. Creation of data-protection volume clone is only allowed from parent-volume which is paloma logical DP volume.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMEBUSY |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMENOTONLINE |  |
> EVOL_ALREADY_MOUNTED |  |
> EINVALIDINPUTERROR |  |
> ESNAPSHOTDOESNOTEXIST |  |
> ESNAPSHOTBUSY |  |
> EDP_CLONE_NOT_ALLOWED |  |
> ESNAPSHOT_NOT_EXPORTED |  |
> EONTAPI_EEXIST |  |
> EVOL_MAX_CLONEDEPHREACHED |  |
> EONDEMAND_CANT_CREATE_FILE |  |
> EVSERVER_OP_NOT_ALLOWED |  |

> Vfiler-enabled
> Yes

volume-clone-split-estimate | [top]

> Display an estimate of additional storage required in the underlying aggregate to perform a volume clone split operation. This command fails if applied to a traditional volume. Cloning is a new capability that applies exclusively to flexible volumes.

> Input Name | Range | Type | Description
> volume |  | string | The name of the clone whose split usage is being estimated.
> Output Name | Range | Type | Description
> clone-split-estimate |  | clone-split-estimate-info[] | An estimate of the number of blocks required in the enclosing aggregate to split a clone from its parent.

> Errno | Description
> EONTAPI_ENOENT |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMENOTCLONE |  |
> EVOLUMENOTONLINE |  |
> EVOLUMEINUSE |  |
> EINTERNALERROR |  |

> Vfiler-enabled
> Yes

volume-clone-split-start | [top]

> Begin the process by which the given clone is split off from its underlying parent volume and snapshot. New storage is allocated for the clone that is distinct from its parent. This process may take some time and proceeds in the background. Use the 'volume-clone-split-status' command to view the operation's progress. Both clone and parent volumes remain available during the process of splitting them apart. Upon completion, the snapshot on which the clone was based will be unlocked in the parent volume. Any snapshots in the clone are removed at the end of processing. Use the 'volume-clone-split-stop' command to stop this process. This command fails if applied to a traditional volume. Cloning is a new capability that applies exclusively to flexible volumes. In Data ONTAP Cluster-Mode, a job is created to perform the split operation. The job id of the job is returned in the API response. The progress of the job can be tracked using the job APIs.

> Input Name | Range | Type | Description
> volume |  | string | Name of the clone that we want split off from its parent volume and snapshot.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMEBUSY |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMENOTCLONE |  |
> EVOL_SCAN_INIT_FAILED |  |
> EVOL_CLONE_BEING_SPLIT |  |
> EVSERVER_OP_NOT_ALLOWED |  |

> Vfiler-enabled
> Yes

volume-clone-split-status | [top]

> Display the progress in separating clones from their underlying parent volumes and snapshots. If a clone name is specified, then the split status for that clone is provided. If no clone name is provided, then status is provided for all clones currently being split. This command fails if applied to a traditional volume, and EONTAPI_EVOLNOTFLEX is thrown. Cloning is a capability that applies exclusively to flexible volumes. This command fails if the volume specified is not a clone, and EVOLNOTCLONE is thrown. This command fails if the volume specified is not being split, and EVOLOPNOTUNDERWAY is thrown.

> Input Name | Range | Type | Description
> volume |  | string optional | The name of the clone being split off from its parent volume and snapshot for which we want status.
> Output Name | Range | Type | Description
> clone-split-details |  | clone-split-detail-info[] optional | List of clones that are currently being split from their parent volumes, along with all relevant status information.

> Errno | Description
> EONTAPI_ENOENT |  |
> EVOLUMEDOESNOTEXIST |  |
> EONTAPI_EVOLNOTFLEX |  |
> EVOLNOTCLONE |  |
> EVOLOPNOTUNDERWAY |  |
> EVOLUMENOTONLINE |  |
> EINTERNALERROR |  |
> EAGGRDOESNOTEXIST |  |
> EONTAPI_ENOSPC |  |
> EPARENTNOTONLINE |  |

> Vfiler-enabled
> Yes

volume-clone-split-stop | [top]

> Stop the process of splitting off a clone from its parent volume and snapshot. All of the blocks that were formerly shared between the given clone and its parent volume that have already been split off will remain that way. This command fails if applied to a traditional volume. Cloning is a new capability that applies exclusively to flexible volumes.

> Input Name | Range | Type | Description
> volume |  | string | The name of the clone for which we want to stop the process of being split off from its parent volume and snapshot.

> Errno | Description
> EONTAPI_ENOENT |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOLNOTCLONE |  |
> EVOLOPNOTUNDERWAY |  |
> EINTERNALERROR |  |
> EVSERVER_OP_NOT_ALLOWED |  |

> Vfiler-enabled
> Yes

volume-container | [top]

> Return the name of the containing aggregate for the named flexible volume.

> Input Name | Range | Type | Description
> volume |  | string | The name of the flexible volume for which we want the containing aggregate.
> Output Name | Range | Type | Description
> containing-aggregate |  | string | Name of the given volume's containing aggregate, if applicable.

> Errno | Description
> EONTAPI_ENOENT |  |
> EINTERNALERROR |  |
> EVSERVERNOTFOUND |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EOBJECTNOTFOUND |  |
> EMULTIPLEVOLSFOUND |  |

> Vfiler-enabled
> Yes

volume-create | [top]

> Create a volume. The detailed behavior of this API depends on where it is received: 1. In Data ONTAP Cluster-Mode, create a new flexible volume. 2. In Data ONTAP 7-Mode, create a new flexible, traditional, or sparse volume with the given name and characteristics. Freshly-created traditional volumes may not be operational immediately after the API returns. Use 'volume-list-info' to obtain information about volumes, including the status of the newly-created traditional volume in order to determine when it is fully operational. This API is not supported for Infinite Volumes.

> Input Name | Range | Type | Description
> constituent-role |  | string optional | This field specifies the role of a constituent within an Infinite Volume. This field is only supported for Infinite Volume constituents and this API will fail if no value is passed for an Infinite Volume constituent. Possible values: 'namespace' ... namespace constituent, 'data' ... data constituent, 'ns_mirror' ... namespace mirror constituent
> containing-aggr-name |  | string optional | Flexible volumes only. The name of the aggregate in which to create the new flexible volume. If provided, this argument must be accompanied by the "size" parameter described below. This input is required for creating a Cluster-Mode volume.
> disk-count |  | integer optional | Traditional volumes only. Number of disks to place into the new traditional volume, including the parity disks. The disks in this newly-created traditional volume come from the spare disk pool. The smallest disks in this pool join the traditional volume first, unless the "disk-size" argument is specified. Either "disk-count" or "disks" must be supplied for traditional volumes. Range [0..2^31-1].
> disk-size |  | integer optional | Traditional volumes only. Disk size in 4KB blocks. Disks that are within 20% of the specified size will be selected for use in the traditional volume. If neither "disk-size" nor "disk-size-with-unit" is specified, existing groups are appended with disks that are the best match for the largest disk in the group. When starting new groups, the smallest disks are selected first. This option is ignored if a specific list of disks to use is specified through the "disks" parameter. Range [0..2^31-1]. You must only use one of either "disk-size" or "disk-size-with-unit" parameters. If both appear, an error message will be returned.
> disk-size-with-unit |  | string optional | Traditional volumes only. Disk size in the specified unit. It is a positive integer number followed by unit of "T", "G", "M" or "K". This option is ignored if a specific list of disks to use is specified through the "disks" parameter. You must only use one of either "disk-size" or "disk-size-with-unit" parameters. If both appear, an error message will be returned.
> disks |  | disk-info[] optional | Traditional volumes only. Specific list of disks to use for the new volume. If "mirrored" is set to true and a specific list of disks is supplied, the "mirror-disks" list with the same number of disks must also be supplied. Either "disk-count" or "disks" must be supplied when creating traditional volumes.
> force |  | boolean optional | Traditional volumes only. Disks in a plex are not normally permitted to span spare pools. This behavior is overridden with this option when it is set to "true".
> is-mirrored |  | boolean optional | Traditional volumes only. Specifies that the new traditional volume be mirrored (have two plexes). If set to "true", then the indicated disks will be split across the two plexes. By default, the new volume will not be mirrored.
> is-snaplock |  | boolean optional | Specifies the creation of a SnapLock volume. By default, is-snaplock is not specified. When is-snaplock is "true" the type of snaplock volume is determined in the following way - 1> If snaplock-type is set, create the type specified in snaplock-type (see snaplock-type for more details) 2> Otherwise, create a Snaplock enterprise volume if a Snaplock enterprise license has been installed. 3> Otherwise, create a Snaplock compliance volume. ESERVICENOTLICENSED is returned if the required Snaplock Compliance or Enterprise license is not installed. EONTAPI_EWORMNOCLOCK is returned if SnapLock Compliance Clock is not running. If you need to create a snaplock volume, the suggested method is to specify snaplock-type as "compliance" or "enterprise" and not specify is-snaplock at all. If you want to create a non-snaplock volume, the suggested method is to specify neither snaplock-type nor is-snaplock.
> language-code |  | string optional | Specifies the language to use for the new volume via a language code. The default language is the one used by the filer's root volume. Available language codes are: 'C' ... POSIX, 'ar' ... Arabic, 'cs' ... Czech, 'da' ... Danish, 'de' ... German, 'en' ... English, 'en_US' ... English (US), 'es' ... Spanish, 'fi' ... Finnish, 'fr' ... French, 'he' ... Hebrew, 'hr' ... Croatian, 'hu' ... Hungarian, 'it' ... Italian, 'ja' ... Japanese euc-j*, 'ja_v1' ... Japanese euc-j, 'ja_JP.PCK' ... Japanese PCK (sjis)*, 'ja_JP.932' ... Japanese cp932*, 'ja_JP.PCK_v2' ... Japanese PCK (sjis), 'ko' ... Korean, 'no' ... Norwegian, 'nl' ... Dutch, 'pl' ... Polish, 'pt' ... Portuguese, 'ro' ... Romanian, 'ru' ... Russian, 'sk' ... Slovak, 'sl' ... Slovenian, 'sv' ... Swedish, 'tr' ... Turkish, 'zh' ... Simplified Chinese, 'zh.GBK' ... Simplified Chinese (GBK), 'zh_TW' ... Traditional Chinese euc-tw, 'zh_TW.BIG5' ... Traditional Chinese Big 5 To use UTF-8 as the NFS character set, append '.UTF-8' to the language code.
> mirror-disks |  | disk-info[] optional | Traditional volumes only. List of mirror disks to use. It must contain the same number of disks specified in "disks".
> qos-policy-group-name |  | string optional | The QoS Policy Group Name that is to be associated with this volume in order to enforce Service Level Objectives (SLO). If you do not assign a QoS policy group to a volume, the system will not monitor and control the traffic to it. NOTE: "none" is a reserved keyword for deleting the association of the volume with a QoS policy group. Specifying "none" as a the QoS policy group during volume creation will have no effect. This parameter is not supported on Infinite Volumes.
> raid-size |  | integer optional | Traditional volumes only. Specifies the maximum number of disks in each RAID group in the traditional volume. The maximum value for this parameter is of raidsize is 28. The default value is platform-dependent. The valid range of values is also platform-dependent, but never wider than [2..28].
> remote-location |  | string optional | Specifies the remote host and volume name for the origin of the FlexCache. A FlexCache license is necessary for this option to be utilized. The default action is not to create a FlexCache Volume. Format: : Create a sparse volume as a FlexCache for the given remote host and remote volume name. Remote Host: Should be formatted as either the DNS hostname or as an IP address. Remote Volume: Should be formatted the same as a volume name. ESERVICENOTLICENSED is returned if the FlexCache service is not licensed. EINVALIDINPUT is returned if the host, or source volume is found to be invalid.
> size |  | string optional | Flexible volumes only. The initial size of the new flexible volume. The format to use is: < number > k|m|g|t where "k" means kilobytes, "m" means megabytes, "g" means gigabytes, and "t" means terabytes. If the trailing unit character doesn't appear, then < number > is interpreted as the number of bytes desired. If provided, this argument must be accompanied by the "containing-aggr-name" parameter described above.
> snaplock-type |  | string optional | Specifies the type of Snaplock volume to be created. Possible values - "compliance" or "enterprise" ESERVICENOTLICENSED is returned if the necessary Snaplock compliance or enterprise license has not been installed. EINVALIDINPUT is returned if snaplock-type has an illegal value or if is-snaplock has been set to "false". EONTAPI_EWORMNOCLOCK is returned if SnapLock Compliance Clock is not running.
> space-reserve |  | string optional | Specifies the type of volume guarantee the new volume will use. Possible values: none, file, volume. If this argument is not provided, the default volume guarantee type is volume. If this argument is not specified for the creation of constituents of an Infinite Volume that does not support storage services, the default guarantee is the guarantee of the Infinite Volume.
> storage-service |  | string optional | Name of the storage service with which to associate the creation of a constituent of an Infinite Volume. This argument is required for the creation of constituents of an Infinite Volume that supports storage services. If the storage service does not exist before creating the constituent, it will be automatically created. Clients can query for the 'is-managed-by-service' field to determine if an Infinite Volume supports storage services. This argument is not supported for Flexible Volumes.
> vm-align-sector | [1..7] | integer optional | The Virtual Machine alignment 512 byte sector number. All files created with the suffix specified in the 'vm-align-suffix' input parameter will have zero-filled <512 * 'vm-align-sector'> bytes data at the beginning so that it's actual data starts at a different offset instead of zero. This is done so that the read & writes to such files are aligned to WAFL's 4k block boundary.
> vm-align-suffix |  | string optional | The Virtual Machine alignment suffix. The suffix such as '.xyz' is used to identify the files which needs to be aligned. This element can only be specified if the vm-align-sector input element is also specified. See the description for 'vm-align-sector' above for more information on this.
> volume |  | string optional | Name of the volume to create. The volume name can contain letters, numbers, and the underscore character (_), but the first character must be a letter or an underscore. In Data ONTAP Cluster-Mode, the volume names must be unique within a Vserver. In Data ONTAP 7-mode, the volume names must be unique on a controller. For an Infinite Volume constituent, the parameter is optional; if a name is not specified, DATA ONTAP will generate the correct name based on the constituent type.
> volume-raid-type |  | string optional | Traditional volumes only. Specifies the type of RAID groups to use in the new traditional volume. The default is "raid4" on most platforms. Possible values: raid4, raid_dp.
> Output Name | Range | Type | Description
> bad-disks |  | disk-info[] optional | Traditional volumes only. List of disks that were not added. This is only returned if there are bad disks.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMENAMEINVALID |  |
> EVOLUMERGSIZEINVALID |  |
> EINVALIDINPUTERROR |  |
> EVOLUMELANGUAGEINVALID |  |
> EVOLUMEDISKSIZEINVALID |  |
> EVOLUMEDISKDUP |  |
> ESERVICENOTLICENSED |  |
> EVSERVERNOTFOUND |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EOBJECTNOTFOUND |  |
> EVOLALREADYMOUNTED |  |
> EONTAPI_EWORMNOCLOCK |  |
> EVOLUME_TYPE_NOT_SUPPORTED |  |

volume-destroy | [top]

> Destroy the specified volume or plex. If a flexible volume is specified, all of its blocks are freed and returned to its containing aggregate; no other flexible volumes in the same containing aggregate (if any) are affected. If a traditional volume is specified, all of its plexes are destroyed, and its disks are returned to the appropriate spare pool(s). If a plex is specified, it must be for a mirrored aggregate (which could potentially be embedded in a traditional volume), leaving it unmirrored. Only offline volumes and plexes can be destroyed. Plexes are not supported for Cluster-Mode volumes. This API is not supported for Infinite Volumes.

> Input Name | Range | Type | Description
> force |  | boolean optional | Force the destruction of the volume even if a non-default vfiler has storage on it. Normally, the system will not destroy such a volume and will instead return EVOLUME_HAS_VFILER_STORAGE.
> name |  | string | Name of an existing volume or plex.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMEPLEXINVALID |  |
> EVOLUME_HAS_VFILER_STORAGE |  |
> EVSERVERNOTFOUND |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EOBJECTNOTFOUND |  |
> EMULTIPLEVOLSFOUND |  |
> EOP_DISALLOWED_ON_CLONE_PARENT |  |
> EVOLUME_TYPE_NOT_SUPPORTED |  |

> Vfiler-enabled
> Yes

volume-footprint-list-info | [top]

> Return a list of volumes and a breakdown of their data and metadata footprints in their parent aggregates. The term footprint is used to refer to the portion of aggregate used space that will be freed when the relevant volume is destroyed. This can exceed the size of the volume due to metadata. If no volume is specified, footprints are displayed for all online volumes on the filer. Note that if space footprint information for more than 20 volumes is desired, the volume-footprint-list-info-iter-* ZAPIs will be more efficient and should be used instead.

> Input Name | Range | Type | Description
> volume |  | string optional | The name of the volume for which we want status information. If not supplied, then we want status for all volumes on the filer.
> Output Name | Range | Type | Description
> vol-footprint-infos |  | vol-footprint-info | Details of space utilization footprint in the hosting aggregate.

> Errno | Description
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMEOFFLINE |  |
> EINTERNALERROR |  |
> EVOL_RESTRICTED |  |

volume-footprint-list-info-iter-end | [top]

> Terminate a list iteration and clean up any saved info.

> Input Name | Range | Type | Description
> tag |  | string | Tag from a previous volume-footprint-list-info-iter-start.

volume-footprint-list-info-iter-next | [top]

> Continues an iteration through the list of volumes.

> Input Name | Range | Type | Description
> maximum |  | integer | The maximum number of entries to retrieve.
> tag |  | string | Tag from a previous volume-footprint-list-info-iter-start.
> Output Name | Range | Type | Description
> records |  | integer | This tells you how many records are being returned from this particular call to volume-footprint-list-info-iter- next. When this value is 0, you have retrieved everything.
> vol-footprint-infos |  | vol-footprint-info[] | List of volumes and their footprint information. See volume- footprint-list-info for a description of type vol-footprint-info.

volume-footprint-list-info-iter-start | [top]

> Starts an iteration through the list of volumes.

> Input Name | Range | Type | Description
> volume |  | string optional | The name of the volume for which we want space footprint information. If not supplied, then we display space footprint for all volumes on the filer.
> Output Name | Range | Type | Description
> records |  | integer | This tells you the number of items that have been saved for future retrieval with volume-footprint-list-info-iter-next.
> tag |  | string | Tag to be used in subsequent iterations.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOL_RESTRICTED |  |

volume-get-filer-info | [top]

> Get information on what possibilities and parameters exist for volumes on a given filer.

> Output Name | Range | Type | Description
> allowed-raidtypes |  | raidtype-info[] | List of RAID types allowed for aggregates on this filer.
> checksum-types |  | string | Checksum types supported by this filer. The possible values: "zoned" - if all aggregates are Fixed VBN, "block" - if all aggregates are Block Appended, "mixed" - if aggregates are mixed (Fixed VBN and Block Appended and Advanced Zoned), "none" - if no aggregates have zoned or block checksums or advanced_zoned checksum (azcs) or mixed, "advanced_zoned" - if all aggregates have Advanced Zoned Checksum scheme.
> default-raidtype |  | string | Default type of RAID used to protect against disk failure in aggregates on this filer. Possible values: raid0, raid4, raid_dp.
> disk-types |  | string | Type of disks supported by this filer. Possible values: "512", "520", "4096", "mixed", "none". "512" if all disks are 512 BPS, "520" if all disks 520 BPS "4096" if all disks 4096 BPS, "mixed" if disks are mixed 512, 520 and 4096 BPS "none" if no disks have 512 or 520 or 4096 BPS.
> raidgroup-size |  | raidgroup-size-info[] | List of the RAID group sizing parameters for each RAID type supported on this filer.
> root-volume |  | string | Current root volume on the filer.
> snapshots-max |  | integer | Maximum number of snapshots available per aggregate on the filer. Range : [0..2^31-1].

> Errno | Description
> EINTERNALERROR |  |

volume-get-language | [top]

> Get the given volume's language mapping.

> Input Name | Range | Type | Description
> volume |  | string | Name of the volume for which we want the language mapping.
> Output Name | Range | Type | Description
> language |  | string | Set to the volume's language mapping, in the form "LanguageCode (Full Name)" (e.g. "en_US (English (US))"). For more information on these values, see 'volume-create'.
> language-code |  | string | Set to the volume's language code, suitable for use as an argument to other functions (e.g. "en_US"). For more information on these values, see 'volume-create'.
> nfs-character-set |  | string | The NFS language mapping character set that is currently in effect for the volume. This field is of the following format: "<nfs-character-set>|<display-name>|<asctime>" Note that "|" is not an OR syntax. <asctime> is the timestamp in the language configuration file header and its format is based on the standard: "A la ISO/IEC 9945-1, ANSI/IEEE Std 1003.1, Second Edition, 1996-07-12." It uses the C Programming Language Printf format: "%.3s %.3s%3d %02d:%02d:%02d %s %d" This format takes the following parameters in order: <weekday name>, <month name>, <month day>, <hour>, <minute>, <second>, <timezone> OR <"">, <year> E.g., If the volume language code is set to "en_US", the default NFS character set is as follows: "iso-8859-1|iso-8859-1|Thu Oct 1 15:00:53 PDT 1998"
> oem-character-set |  | string | The OEM language mapping character set that is currently in effect for the volume. This field is of the following format: "<oem-code-page>|<display-name>|<asctime>" Note that "|" is not an OR syntax. <asctime> is the timestamp in the language configuration file header and its format is based on the standard: "A la ISO/IEC 9945-1, ANSI/IEEE Std 1003.1, Second Edition, 1996-07-12." It uses the C Programming Language Printf format: "%.3s %.3s%3d %02d:%02d:%02d %s %d" This format takes the following parameters in order: <weekday name>, <month name>, <month day>, <hour>, <minute>, <second>, <timezone> OR <"">, <year> E.g., If the volume language code is set to "en_US", the default NFS character set is as follows: "cp437|cp437|Thu Oct 1 15:00:53 PDT 1998"

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMENOTONLINE |  |
> EVOLUMEBUSY |  |
> EVSERVERNOTFOUND |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EOBJECTNOTFOUND |  |
> EMULTIPLEVOLSFOUND |  |

> Vfiler-enabled
> Yes

volume-get-root-name | [top]

> Return the name of the "root" volume on the filer. If this request is executed in the context of a vfiler, the "root" volume of the vfiler will be returned. If this request is executed in the context of a Vserver the "namespace root" volume of the Vserver will be returned. If the "namespace root" volume of the Admin Vserver is requested, EVSERVER_OP_NOT_ALLOWED will be returned.

> Output Name | Range | Type | Description
> volume |  | string | Name of the root volume for the filer.

> Errno | Description
> EINTERNALERROR |  |
> EVSERVERNOTFOUND |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EOBJECTNOTFOUND |  |

> Vfiler-enabled
> Yes

volume-get-supported-guarantees | [top]

> Returns the list of guarantee types that are supported on this volume. This just does semantic checks and so enabling supported guarantees can still fail because of space checks.

> Input Name | Range | Type | Description
> volume |  | string | Name of the volume. Ex: flex1, vol0 etc.
> Output Name | Range | Type | Description
> guarantee-types |  | guarantee[] | List of guarantee types supported on this volume.

> Errno | Description
> EVOLUMEDOESNOTEXIST |  |
> EINTERNALERROR |  |
> EOPNOTSUPPORTED |  |

> Vfiler-enabled
> Yes

volume-list-info | [top]

> Get volume status. Note that all RAID-related status items (e.g., 'raid-size', 'raid-status', 'checksum-style') reported for a flexible volume actually describe the state of its containing aggregate.

> Input Name | Range | Type | Description
> verbose |  | boolean optional | If set to "true", more detailed volume information is returned. If not supplied or set to "false", this extra information is not returned.
> volume |  | string optional | The name of the volume for which we want status information. If not supplied, then we want status for all volumes on the filer. Note that if status information for more than 20 volumes is desired, the volume-list-info-iter-* zapis will be more efficient and should be used instead.
> Output Name | Range | Type | Description
> volumes |  | volume-info[] | List of volumes and their status information.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMEDOESNOTEXIST |  |
> EVSERVERNOTFOUND |  |
> EMISSINGVSERVERARGUMENT |  |
> ENODENOTFOUND |  |

> Vfiler-enabled
> Yes

volume-list-info-iter-end | [top]

> Terminate a list iteration and clean up any saved info.

> Input Name | Range | Type | Description
> tag |  | string | Tag from a previous volume-list-info-iter-start.

> Vfiler-enabled
> Yes

volume-list-info-iter-next | [top]

> Continues an iteration through the list of volumes.

> Input Name | Range | Type | Description
> maximum |  | integer | The maximum number of entries to retrieve.
> tag |  | string | Tag from a previous volume-list-info-iter-start.
> Output Name | Range | Type | Description
> records |  | integer | This tells you how many records are being returned from this particular call to volume-list-info-iter-next. When this value is 0, you have retrieved everything.
> volumes |  | volume-info[] | List of volumes and their status information. See volume-list-info for a description of type volume-info.

> Vfiler-enabled
> Yes

volume-list-info-iter-start | [top]

> Starts an iteration through the list of volumes.

> Input Name | Range | Type | Description
> verbose |  | boolean optional | If set to "true", more detailed volume information is returned. If not supplied or set to "false", this extra information is not returned.
> volume |  | string optional | The name of the volume for which we want status information. If not supplied, then we want status for all volumes on the filer.
> Output Name | Range | Type | Description
> records |  | integer | This tells you the number of items that have been saved for future retrieval with volume-list-info-iter-next.
> tag |  | string | Tag to be used in subsequent iterations.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMEDOESNOTEXIST |  |

> Vfiler-enabled
> Yes

volume-mediascrub-list-info | [top]

> Get the RAID media scrubbing status on the named traditional volume, plex, or RAID group. If no name is given, then status is provided for all RAID groups currently undergoing media scrubbing.

> Input Name | Range | Type | Description
> volume |  | string optional | Name of traditional volume, plex or RAID group for which media scrub status is desired. If no name is given, then status is provided for all RAID groups currently undergoing media scrubbing.
> Output Name | Range | Type | Description
> mediascrub-details |  | mediascrub-detail-info[] | List of RAID groups and their media scrub status.

> Errno | Description
> EINTERNALERROR |  |

volume-mirror | [top]

> Turns an unmirrored traditional volume into a mirrored traditional volume by adding a plex to it. The plex is either newly formed from disks chosen from a spare pool or, if the "victim-volume" option is specified, is taken from another existing unmirrored volume. The volume must currently be unmirrored. Disks may be specified explicitly using the "mirror-disks" argument list option in the same way as with the 'volume-create' and 'volume-add' APIs. The number of disks specified must exactly match the number present in the existing traditional volume. If the disks to use are not explicitly specified, then the appropriate disks are automatically selected to match those already in the traditional volume's existing plex. It is not possible to directly mirror a flexible volume; if that is the goal, then consider using 'volume-container' to find the flexible volume's containing aggregate, then use 'aggr-mirror' to mirror that aggregate (which, of course, will case all other volumes contained in the given aggregate to become mirrored as well).

> Input Name | Range | Type | Description
> force |  | boolean optional | Force the mirroring operation through, past the normal roadblocks that would otherwise cause it to be aborted. For example, disks in a plex are not normally permitted to span spare pools. This safety-drive behavior is overridden when the 'force' option is provided and set to 'true'.
> mirror-disks |  | disk-info[] optional | Specific list of mirror disks to use. It must have the same number of disks as are present in the given traditional volume. The specified disks are not permitted to span disk pools; this behavior can be overridden with the "force" argument.
> victim-volume |  | string optional | The "victim" traditional volume to cannibalize in order to mirror the given traditional volume. The result is a mirrored traditional volume that is otherwise identical to the original volume before the operation. The "victim-volume" is effectively destroyed. "victim-volume" must have been previously mirrored with this volume, then separated via the "volume-split" command. "victim-volume" must be offline.
> volume |  | string | Name of the traditional volume to be mirrored.
> Output Name | Range | Type | Description
> bad-disks |  | disk-info[] optional | List of disks that were not added. This is only returned if there are bad disks.

> Errno | Description
> EINTERNALERROR |  |
> EINVALIDINPUTERROR |  |
> EVOLUMEDISKDUP |  |

volume-move-abort | [top]

> Aborts the volume move operation of the specified source volume. This is a synchronous API.

> Input Name | Range | Type | Description
> source-volume |  | string | Name of the volume whose move has to be aborted

> Errno | Description
> EVOLUMEDOESNOTEXIST |  |
> EINVALIDINPUTERROR |  |
> EALREADYSTARTED |  |
> EOP_DISALLOWED_VOLUME_FENCED |  |
> EINVALIDSTATE |  |

volume-move-cutover | [top]

> Initiates a manual cutover operation on the specified source volume. This is a synchronous API. Cutover is the final phase of volume move operation after which destination volume takes the identity of the source volume. If cutover cannot be initiated or completed, the API will return with an error. The move will pause and an EMS message will be printed. The volume-move-status API will show the state of the move as move(paused). The user can resume or abort the move.

> Input Name | Range | Type | Description
> cutover-window | [30..300] | integer optional | Time interval to complete cutover in seconds. If not specified, then the existing value is maintained.
> source-volume |  | string | Name of the volume, whose move is waiting for cutover to be initiated.

> Errno | Description
> EVOLUMEDOESNOTEXIST |  |
> EINVALIDINPUTERROR |  |
> EAPIMISSINGARGUMENT |  |
> EINVALIDSTATE |  |
> EALREADYSTARTED |  |
> EOP_DISALLOWED_VOLUME_FENCED |  |

volume-move-pause | [top]

> Pauses the volume move operation of the specified source volume. This is a synchronous API.

> Input Name | Range | Type | Description
> source-volume |  | string | Name of the volume whose move must be paused

> Errno | Description
> EVOLUMEDOESNOTEXIST |  |
> EINVALIDINPUTERROR |  |
> EALREADYSTARTED |  |
> EOP_DISALLOWED_VOLUME_FENCED |  |
> EINVALIDSTATE |  |

volume-move-resume | [top]

> Resumes a previously paused volume move operation of a specified source volume. This is an asynchronous API. It will run a series of checks to determine if the volume move can be resumed. If there are no errors or warnings, the API will return successfully. The move will be resumed. The status of the move can be obtained from the volume-move-status API. If any of the checks result in an error or warning, the API will return with an error. If the checks result in no errors but one or more warnings and is-override-warnings is set to true, the API will return successfully and the move will be resumed.

> Input Name | Range | Type | Description
> cutover-attempts | [1..25] | integer optional | Number of cutover attempts. If not specified, then the existing value is maintained.
> cutover-window | [30..300] | integer optional | Time interval to complete cutover in seconds. If not specified, then the existing value is maintained.
> is-keep-source |  | boolean optional | If specified, the source volume will not be destroyed after the move is complete.
> is-manual-cutover |  | boolean optional | If specified, user has to initiate cutover.
> is-override-warnings |  | boolean optional | If warnings are encountered during the resume, the default behavior is to pause. If is-override-warnings is true, the move will continue and return these warnings in the errors-warnings element.
> source-volume |  | string | Name of the volume whose move must be resumed
> Output Name | Range | Type | Description
> errors-warnings |  | errors-warnings-info[] optional | Warnings when the move is resumed and is-override-warnings is set to true

> Errno | Description
> EINVALIDINPUTERROR |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMENAMEINVALID |  |
> EVOLUMENOTONLINE |  |
> EALREADYSTARTED |  |
> EAPIMISSINGARGUMENT |  |
> EINVALIDINPUTERROR |  |
> EINVALIDSTATE |  |
> ENOTSTARTED |  |
> EONTAPI_EALREADY |  |
> EVFILEROPNOTALLOWED |  |
> EVOLAGGRISIRONING |  |
> EVOLUME_TYPE_NOT_SUPPORTED |  |
> EVOL_CIFS_ENABLED |  |
> EVOL_ONLINE_ERROR |  |
> EVOLUME_ADMINOP_NOT_FENCED |  |
> EINVALIDSTATE |  |
> EVOL_NFS_ENABLED |  |

volume-move-start | [top]

> This API is applicable to Data ONTAP 7-Mode as well as Data ONTAP Cluster-Mode. If the API is sent to a Data ONTAP 7-Mode controller, Vol Move will move a single 7-mode flexvol between two aggregates on the same controller. If the API is sent to the Admin Vserver LIF, the flexvol can be moved to any eligible aggregate in the cluster. The list of eligible aggregates can be obtained using the "volume-move-target-aggr-get-iter" API. This API will start the move. It will run a series of checks to determine if the volume can be moved. If any of the checks results in an error or warning, the API will return with an error. The user has to take the necessary corrective action before restarting the move. If all the checks pass, the API will return a success. If "perform-validation-only" is not true, the destination volume will be created and the move will start. By default, the move will cutover automatically. If "perform-validation-only" is set to true, all the errors and warnings encountered from the checks will be returned in the errors-warnings output element. The API will return successfully. The move will not be initiated. When the API is sent to a Data ONTAP 7-Mode controller, if "is-override-warnings" is set to true and the checks return no errors but one or more warnings, the API will return successfully. The warnings will be in the errors-warnings output element. If the API is sent to a Data ONTAP 7-Mode controller, the status of the move can be obtained using the "volume-move-status" API. If the move fails an EMS message will be generated. The reason for the failure can be obtained from the volume-move-status API. After a successful move, the source volume will be destroyed unless the user has specified the "is-keep-source" option. If cutover cannot be completed in the default or user specified number of attempts, an EMS message will be printed and the move will pause. The reason for the pause will be available in the "volume-move-status" API. The user can either resume or abort the move. This is an asynchronous API. If the API is sent to the Admin Vserver LIF, a background job will be created and the API returns immediately with the job ID information. The status of the move job can be obtained by using "job-get" or "job-get-iter" API.

> Input Name | Range | Type | Description
> cutover-attempts | [1..25] | integer optional | Number of cutover attempts. Default value is 3
> cutover-window | [30..300] | integer optional | Time interval to complete cutover in seconds. Default value for Data ONTAP Cluster-Mode volume move is 45 seconds. Default value for Data ONTAP 7-mode volume move is 60 seconds.
> dest-aggr |  | string | Name of the destination aggregate
> is-keep-source |  | boolean optional | If specified, the source volume will not be destroyed after the move is complete. Default is false.
> is-manual-cutover |  | boolean optional | If specified, user has to initiate cutover. Default is false.
> is-override-warnings |  | boolean optional | If warnings are encountered during the move, the default behavior is to stop. If is-override-warnings is true, the move will continue and return these warnings in the errors-warnings element. Default is false.
> perform-validation-only |  | boolean optional | Run pre-checks for the move, return all the errors and warning messages encountered during the checks in the errors-warnings element and exit. The move will not be triggered. Default is false.
> source-volume |  | string | Name of the volume that must be moved
> Output Name | Range | Type | Description
> errors-warnings |  | errors-warnings-info[] optional | Errors and warnings if perform-validation-only is set to true

> Errno | Description
> EINVALIDINPUTERROR |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMENAMEINVALID |  |
> EVOLUMENOTONLINE |  |
> EAGGRDOESNOTEXIST |  |
> EAGGRNOTONLINE |  |
> EALREADYSTARTED |  |
> EAPIMISSINGARGUMENT |  |
> EINVALIDINPUTERROR |  |
> EINVALIDSTATE |  |
> ENOTSTARTED |  |
> EONTAPI_EALREADY |  |
> EVFILEROPNOTALLOWED |  |
> EVOLAGGRISIRONING |  |
> EVOLUME_TYPE_NOT_SUPPORTED |  |
> EVOL_CIFS_ENABLED |  |
> EVOL_ONLINE_ERROR |  |
> EVOL_TOO_MANY |  |
> EVOLUME_ADMINOP_NOT_FENCED |  |
> EVOL_NFS_ENABLED |  |
> EOP_DISALLOWED_ON_BUSY_MIRROR |  |
> EOP_DISALLOWED_ON_LOADSHARING_VOL |  |
> EOP_DISALLOWED_ON_CLONE_PARENT |  |
> EOP_DISALLOWED_ON_BACKUP_ACTIVE_VOL |  |
> EOP_DISALLOWED_ON_STRIPED_VOL |  |
> EOP_DISALLOWED_ON_COMPRESSED_VOL |  |
> EOP_DISALLOWED_ON_7MODE_VOL |  |
> EOP_DISALLOWED_ON_STRIPED_AGGR |  |
> EOP_DISALLOWED_ON_VOL_ALREADY_ON_AGGR |  |
> EOP_DISALLOWED_ON_ROOT_AGGR |  |
> ESNAPMIRROR_NOT_INITIALIZED |  |
> EONTAPI_ENOSPCAGGR |  |
> ENDMPRUNNING |  |
> EVOLISGRIDIRONING |  |
> EVOLMOVE_NDMP_DUMPS_RUNNING |  |
> EVOLMOVE_NDMP_RESTORE_RUNNING |  |
> EVOLMOVE_SIS_UNDO_RUNNING |  |
> E_VOL_MOVE_INCOMPATIBLE_VERSION |  |
> E_VOL_MOVE_DC_NOT_ALLOWED |  |
> ENODENOTFOUND |  |
> E_OP_DISALLOWED_ON_AGGR_NOT_IN_VSERVER_LIST |  |
> E_OP_UNSUPPORTED_NO_SPACE_ON_DESTINATION_AGGR |  |
> EVOLUME_RELSTATUS_UNKNOWN |  |
> EINTERNALERROR |  |
> ESNAPMIRRORNOTSUPPORT |  |
> ESNAPMIRRORVOLNOTFOUND |  |
> ESNAPMIRRORINVALIDINPUT |  |
> ESNAPMIRRORINVALIDUUID |  |
> EAPIMISSINGARGUMENT |  |
> ENOMEM |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> ECANNOT_MOVE_TRANSITION_VOLUME |  |
> EVOL_CLONE_BEING_SPLIT |  |
> EVOLMOVE_CANNOT_MOVE_TO_CFO |  |
> EVOLMOVE_CANNOT_MOVE_FROM_CFO_AGGR_IN_TAKEOVER |  |

volume-move-status | [top]

> Obtains the status of the volume move operation. This is a synchronous API.

> Input Name | Range | Type | Description
> is-verbose |  | boolean optional | If not supplied or set to "false", output shows source volume, destination aggregate, cutover window, cutover attempts and state of move. If set to "true", verbose output containing details about last and current snapmirror transfer in addition to above parameters is returned.
> source-volume |  | string optional | Name of the volume that is being moved. If source-volume is not provided, then the status of all active moves is listed. If it is provided the status of the move of source-volume is returned. Since this version will support only one move at a time, this input will not alter the output returned by this API.
> Output Name | Range | Type | Description
> status |  | vol-move-status-info[] | Status of the vol move

> Errno | Description
> EVOLUMEDOESNOTEXIST |  |
> EINVALIDINPUTERROR |  |
> EVOLOPNOTUNDERWAY |  |

volume-offline | [top]

> Take the specified volume or plex offline, making it unavailable for both user-level data access and RAID-level access (unless it's a flexible volume, at which time its containing aggregate is not affected in any way, and will remain fully online). The operation takes effect before the API returns except in maintenance mode, when the current root volume may not be taken offline. A volume marked to become the root cannot be taken offline. Taking a flexible volume offline does not affect its containing aggregate in any way. A number of operations being performed on the given volume (or its containing aggregate) can prevent this operation from succeeding, either at all or for various lengths of time. If such operations are found, the system waits up to one second for them to finish. If they don't, the command is aborted. A check is also made for files on the volume opened by internal ONTAP processes. The command is aborted if any are found. Plexes are not supported for Cluster-Mode volumes. This API is not supported for Infinite Volumes.

> Input Name | Range | Type | Description
> cifs-delay |  | integer optional | If a volume contains CIFS shares, users should be warned before taking the volume offline. This argument specifies the number of minutes to delay before taking the volume offline, during which time CIFS users are warned of the pending loss of service. A 'cifs-delay' time of 0 means that the volume is to be taken offline immediately without issuing any warnings. CIFS users can lose data if they are not given a chance to terminate applications gracefully. By default, the value of 'cifs-delay' is 0.
> name |  | string | Name of an existing volume or plex. If a volume contains CIFS shares, users should be warned before taking the volume offline. Use "cifs-delay" to specify number of seconds to wait. If a plex is specified, the plex must be part of a mirrored volume, and both plexes must be online. Prior to offlining a plex, the system will flush all internally-buffered data associated with the plex and create a snapshot that is written out to both plexes. The snapshot allows for efficient resynchronization when the plex is subsequently brought back online.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMECIFSTERMINATE |  |
> EVOLUMEBUSY |  |
> EVOLUMEOFFLINE |  |
> EVSERVERNOTFOUND |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EOBJECTNOTFOUND |  |
> EMULTIPLEVOLSFOUND |  |

> Vfiler-enabled
> Yes

volume-online | [top]

> Bring the specified volume or the plex online. This command takes effect immediately. If there are CIFS shares associated with the volume, they are enabled. Plexes are not supported for Cluster-Mode volumes. This API is not supported for Infinite Volumes.

> Input Name | Range | Type | Description
> name |  | string | Name of an existing volume or plex. If a volume is specified, it must be currently offline, restricted, or foreign. If the volume is foreign, it will be made native before being brought online. A ``foreign'' volume is a traditional volume that consists of disks moved from another filer and that has never been brought online on the current filer. Traditional volumes that are not foreign are considered ``native.'' If the volume is inconsistent, but has not lost data, it is advisable to run WAFL_check or wafliron (or do a 'snapmirror initialize' in case of a replica volume) prior to bringing an inconsistent volume online. Bringing an inconsistent volume online increases the risk of further file system corruption. If the volume is inconsistent and has experienced possible loss of data, it cannot be brought online unless WAFL_check or wafliron (or 'snapmirror initialize') has been run on the volume. If a plex is specified, the plex must be part of an online mirrored traditional volume or aggregate. The system will initiate resynchronization of the plex as part of online processing.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMEPLEXINVALID |  |
> EVSERVERNOTFOUND |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EOBJECTNOTFOUND |  |
> EMULTIPLEVOLSFOUND |  |
> EVOLUME_UNSUPPORTED_OPTION_VMALIGN |  |

> Vfiler-enabled
> Yes

volume-options-list-info | [top]

> Get the options that have been set for the specified volume.

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

> Errno | Description
> EINTERNALERROR |  |
> EVSERVERNOTFOUND |  |
> EOBJECTNOTFOUND |  |
> EMULTIPLEVOLSFOUND |  |

> Vfiler-enabled
> Yes

volume-rename | [top]

> Renames the specified volume to a new name specified by "new-volume-name". If the volume is referenced in the /etc/exports file, remember to make the name change in /etc/exports also so that the affected file system can be exported by the filer after the filer reboots. The "volume-rename" command does not automatically update the /etc/exports file. This API is not supported for Infinite Volumes.

> Input Name | Range | Type | Description
> new-volume-name |  | string | New volume name.
> volume |  | string | Name of an existing volume.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMENAMEINVALID |  |
> EVOLUMEBUSY |  |
> EVSERVERNOTFOUND |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EOBJECTNOTFOUND |  |
> EMULTIPLEVOLSFOUND |  |

> Vfiler-enabled
> Yes

volume-restrict | [top]

> Restrict the specified volume, making it unavailable for user-level data access but leaving it (or its containing aggregate, if it's a flexible volume) available to internal OnTAP RAID-level access. This API is not supported for Infinite Volumes. This API is not supported on Infinite Volume constituents.

> Input Name | Range | Type | Description
> cifs-delay |  | integer optional | If a volume contains CIFS shares, users should be warned before restricting the volume . This argument specifies the number of minutes to delay before restricting the volume, during which time CIFS users are warned of the pending loss of service. A 'cifs-delay' time of 0 means that the volume is to be restricted immediately without issuing any warnings. CIFS users can lose data if they are not given a chance to terminate applications gracefully. By default, the value of 'cifs-delay' is 0.
> name |  | string | Name of the volume to restrict.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMECIFSTERMINATE |  |
> EVOLUMEBUSY |  |
> EVSERVERNOTFOUND |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EOBJECTNOTFOUND |  |
> EMULTIPLEVOLSFOUND |  |

> Vfiler-enabled
> Yes

volume-scrub-list-info | [top]

> Get the status of RAID parity scrubbing on the named traditional volume, plex, or RAID group. If no name is given, then status is provided for all RAID groups currently undergoing scrubbing. Scrubbing status includes a percent-complete value and its suspended status (if any).

> Input Name | Range | Type | Description
> name |  | string optional | Name of an existing traditional volume, plex, or RAID group. If no name is given, then status is generated for all RAID groups currently being scrubbed.
> verbose |  | boolean optional | If set to "true", this operation will be verbose. If not supplied or set to 'false', normal output levels will be used.
> Output Name | Range | Type | Description
> scrub-details |  | scrub-detail-info[] | List of RAID groups and their scrub status.

> Errno | Description
> EINTERNALERROR |  |

volume-scrub-resume | [top]

> Resume RAID parity scrubbing on the named traditional volume, plex, or RAID group. If no name is given, then resume scrubbing on all RAID groups for which it is suspended.

> Input Name | Range | Type | Description
> name |  | string optional | Name of the existing traditional volume, plex, or RAID group for which the scrubbing is to resume.

> Errno | Description
> EINTERNALERROR |  |

volume-scrub-start | [top]

> Start RAID parity scrubbing on the named traditional volume, plex, or RAID group. RAID parity scrubbing compares the data disks to the parity disk in a RAID group, correcting the parity disk's contents as necessary. If a plex name is given, then scrubbing is started on all RAID groups contained in the plex. If a RAID group name is given, then scrubbing is started only in that RAID group. If no name is given, then scrubbing is started on the RAID groups within all online traditional volumes and aggregates. Use 'volume-scrub-list-info' to check scrub status.

> Input Name | Range | Type | Description
> name |  | string optional | Name of an existing traditional volume, plex, or RAID group.

> Errno | Description
> EINTERNALERROR |  |

volume-scrub-stop | [top]

> Stop RAID parity scrubbing on the named volume, plex, or group; if no name is given, on all RAID groups currently undergoing parity scrubbing.

> Input Name | Range | Type | Description
> name |  | string optional | Name of an existing volume, plex, or raid-group.

> Errno | Description
> EINTERNALERROR |  |

volume-scrub-suspend | [top]

> Suspend RAID parity scrubbing on the named traditional volume, plex, or RAID group. If no name is given, suspend scrubbing on all RAID groups currently being scrubbed.

> Input Name | Range | Type | Description
> name |  | string optional | Name of an existing traditional volume, plex, or RAID group.

> Errno | Description
> EINTERNALERROR |  |

volume-set-language | [top]

> Set the given volume's language mapping.

> Input Name | Range | Type | Description
> language-code |  | string | The new language mapping for the volume. For a list of legal language mapping values, see 'volume-create'.
> volume |  | string | Name of the volume that is to have its language mapping changed.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMENOTONLINE |  |
> EVOLUMEBUSY |  |

> Vfiler-enabled
> Yes

volume-set-option | [top]

> Set the option named 'option-name' to the value specified by 'option-value' in the specified volume. The change remains effective even after the filer is rebooted. Some options have values that are numbers or strings, and others have values that are 'on' (also expressible as 'yes', 'true', or '1' ) or "off" (also expressible as 'no', 'false', or '0'). A mixture of uppercase and lowercase characters may be used for an option's value. Note that the 'root' option is special in that it does not have an associated value. Also, note that some of these options can NOT be set for a flexible volume, as they relate only to aggregates (either free-standing ones or those embedded in traditional volumes). Other options may only apply for flexible volumes.

> Input Name | Range | Type | Description
> option-name |  | string | Name of the option to be set. Possible values: "convert_ucode" (value: "on" | "off") Setting this option to "on" forces conversion of all directories to UNICODE format when accessed from both NFS and CIFS. By default, it is set to "off", in which case access from CIFS causes conversion of pre-4.0 and 4.0- format directories. Access from NFS causes conversion of 4.0 format directories. This option cannot be set on a Cluster-Mode volume unless it was transitioned from 7-Mode. "snapshot_clone_dependency" (value: "on" | "off") Setting this option "on" will unlock all initial and intermediate backing snapshots for all inactive LUN clones. For active LUN clones, only the backing snapshot will be locked. If the option is "off" the backing snapshot will remain locked until all intermediate backing snapshots are deleted. This option is not valid for a Cluster-Mode volume. "create_reserved" This option is no longer supported. "create_ucode" (value: "on" | "off") Setting this option to "on" forces UNICODE format directories to be created by default, both from NFS and CIFS. The default value is "off", in which case all directories are created in pre-4.0 format and only converted to UNICODE format upon the first CIFS access. This option cannot be set on a Cluster-Mode volume. "extent" (value: "on" | "space_optimized" | "off") Setting this option to "on" enables extents in the volume. This causes application writes to be written in the volume as a write of a larger group of related data blocks called an extent. Using extents may help workloads that perform many small random writes followed by large sequential reads. However, using extents may increase the amount of disk operations performed on the filer, so this option should only be used where applicable. The default value is "off", in which case extents are not used. The value "space_optimized" indicates extent updates will not duplicate snapshot blocks into the active file system, thereby using space conservatively. The "space_optimized" value may result in degraded snapshot read performance; and may only be used for flexible volumes. "fractional_reserve" (value: < number >) This option decreases the amount of space reserved for overwrites of reserved objects (LUNs, files) in a volume. The option is set to 100 by default and indicates that 100% of the required reserved space will actually be reserved so the objects are fully protected for overwrites. The value can vary from 0 to 100. Using a value of less than 100 indicates what percentage of the required reserved space should actually be reserved. This returns the extra space to the available space for the volume, decreasing the total amount of space used. However, this does leave the protected objects in the volume vulnerable to out of space errors since less than 100% of the required reserved space is actually reserved. If reserved space becomes exhausted this will cause disruptions on the hosts using the objects. If the percentage is decreased below 100%, it is highly recommended that the administrator actively monitor the space usage on the volume and take corrective action if the reserved space nears exhaustion. "fs_size_fixed" (value: "on" | "off") Setting this option to "on" causes the file system to remain the same size (and not grow) when a SnapMirror relationship is broken, or when a "vol/aggr add" is performed on it. This option is automatically set to be "on" when a volume becomes a SnapMirrored. It remains "on" after the "snapmirror break" command is issued for the volume. This option allows a volume to be SnapMirrored back to the source without needing grow the source volume. If the volume size is larger than the file system size, turning off this option forces the file system to grow to the size of the volume. "guarantee" (value: "none" | "file" | "volume") Flexible volumes only. Setting this option controls the type of space reservation for the named flexible volume. There are three possible settings. The first, "none", provides no guarantee that there will be enough blocks in the containing aggregate to meet the flexible volume's needs. The second, "file", guarantees there will be enough blocks in the containing aggregate to meet the needs of the specified files in the flexible volume. The third, "volume", is the default setting and guarantees there will be enough blocks available in the containing aggregate to meet the entire flexible volume's needs. An error will be returned if an attempt is made to set this option on a traditional volume. "ignore_inconsistent" (value: "on" | "off") This option can only be set in maintenance mode. If set to "on", then the root volume may be brought online when booting even if it is marked as inconsistent. The user is cautioned that bringing it online prior to running WAFL_check or wafliron may result in further file system inconsistency. "maxdirsize" (value: < number >) Set the maximum size (in KBytes) to which any directory can grow. The default setting of 10240 limits directory size to 10 MBytes and allows it to hold up to approximately 300,000 files. The number of files that the directory actually can hold varies depending on such things as the length of the names and whether it needs to use double-byte UNICODE characters. Most users should not need to change this option's setting. This option is useful for environments where system users may grow a directory to a size that starts impacting system performance. When a user tries to create a file in a directory that is at the limit, the system returns a ENOSPC error and fails the create. "max_write_alloc_blocks" (value: < number >) Set the maximum number of blocks used for write allocation. The default setting, 0, uses the system-wide default number of blocks, which should be optimal for most users. Some sequential read workloads may benefit from increasing this value. On rare occasions, some multi-stream sequential write workloads may benefit from decreasing this value. Range: [0..2048]. "minra" (value: "on" | "off") Setting this option to "on" causes the filer to perform minimal read-ahead on this volume. By default, this option is "off", causing the filer to perform very aggressive read-ahead on the volume. "no_atime_update" (value: "on" | "off") Setting this option to "on" prevents the update of inode access times when a file is read. This option is useful for volumes with extremely high read traffic, since it prevents writes to the inode file for the volume from contending with reads from other files. It should be used carefully. That is, use this option when you know in advance that the correct access time for inodes will not be needed for files on that volume. "no_i2p" (value: "on" | "off") Setting this option to "on" disables inode to parent pathname translations on the volume. The default setting is off. "nosnap" (value: "on" | "off") Setting this option to "on" disables automatic snapshots on the volume. This option is not supported for Cluster-Mode volumes. "nosnapdir" (value: "on" | "off") Setting this option to "on" disables the visible .snapshot directory that is normally present at system internal mount points. It also turns off access to all other .snapshot directories in the volume. "nvfail" (value : "on" | "off") If this option is on, the filer performs additional work at boot time if it finds that there has been any potential data loss due to an NVRAM failure. In such situations, it causes the invalidation of all NFS file handles on all volumes affected by the problem so that client-side users are forced to remount the affected file system (and thus not continue to use potentially incorrect data). It is also possible to specify a set of files per volume that are to be renamed out of the way in these cases. The filer sends error messages to the console whenever such problems are found. "raid_cv" (value: "on" | "off") Traditional volumes only. Setting the option to "off" disables block checksum protection on the volume. The default is "on". The user is cautioned that turning off the option exposes the filesystem to inconsistency that could be caused by a misbehaving hardware component in the system. "raid_zoned" (value: "on" | "off") Traditional volumes only. Setting the option to "off" disables zoned checksum protection on the volume. The default is "on". The user is cautioned that turning off the option exposes the filesystem to inconsistency that could be caused by a misbehaving hardware component in the system. "raidsize" (value: < number >) Traditional volumes only. The maximum size of a RAID group within the traditional volume. Changing this option doesn't cause existing RAID groups to grow or shrink. Rather, it only affects whether more disks will be added to the last existing RAID group in the future, and how large new RAID groups will be. "raidtype" (value: "raid4" | "raid_dp") Traditional volumes only. The type of RAID group used for this traditional volume. The "raid4" setting provides one parity disk per RAID group, while "raid_dp" provides two. Changing this option immediately changes the RAID group type for all RAID groups in the traditional volume. When upgrading RAID groups from "raid4" to "raid_dp", each RAID group begins reconstruction onto a spare disk allocated for the second "dparity" parity disk. "read_realloc" (value: "on" | "space_optimized" | "off") Setting this option to "on" enables read-reallocation in the volume. This causes application reads to optimize the layout of parts of a file or LUN after the data has been read from disk and is in the appliance memory. The default value is "off", in which case read-reallocate is not used. The value "space_optimized" indicates read-reallocate updates will not duplicate blocks into the active file system, thereby using space conservatively. The "space_optimized" value may result in degraded snapshot read performance; and may only be used for flexible volumes. "resyncsnaptime" (value: < number >) Traditional volumes only. Sets the RAID mirror resynchronization snapshot frequency to be the given number of minutes. The default value is '60' (minutes). "root" (value: < none >) The specified volume is to become the root volume for the filer on the next reboot. This option can be used on only one volume at any given time. The existing root volume will become a non-root volume after the reboot. Until the system is rebooted, the current root volume will continue to show 'root' as one of its options, and the new root volume will show 'diskroot' as an option. In general, the volume that has the 'diskroot' option value is the one that becomes the root volume following the next reboot. The only way to remove the root status of a volume is to set it on another one. "schedsnapname" (value: "create_time" | "ordinal") Setting the option to "ordinal" causes scheduled snapshots to be named in the hourly.n name format. Setting the value to "create_time" causes snapshots to use a hourly.yyyy-mm-dd_hhmm name format instead. The default is "ordinal". "snapmirrored" (value : "off") If SnapMirror is enabled, the filer automatically sets this option to "on". Set this option to "off" if SnapMirror should no longer be used to update the mirror. After setting this option to "off", the mirror becomes a regular writable volume. This option can only be set to "off" with this interface. Only the filer can change this option's value from "off" to "on". This option is not settable in Data ONTAP Cluster-Mode. Use "snapmirror-break" API instead. "try_first" (value : "volume_grow" | "snap_delete") If the flexible volume is configured to automatically reclaim space if the volume is running out of space, then setting this option to "volume_grow" will cause the volume to increase in size before deleting snapshots. If the option was set to "snap_delete", snapshots will be deleted before the volume size is increased. "svo_enable" (value: "on" | "off") Setting this option to "on" enables SnapValidator functionality on this volume. This option only applies to non-root volumes. This option is unsupported in Data ONTAP Cluster-Mode. "svo_allow_rman" (value: "on" | "off") Setting this option to "on" enables SnapValidator functionality on this volume to allow this volume to contain Oracle RMAN backup data. This option only applies to non-root volumes. This option is unsupported in Data ONTAP Cluster-Mode. "svo_checksum" (value: "on" | "off") Setting this option to "on" enables SnapValidator checksumming of all writes to this volume. This option only applies to non-root volumes. This option is unsupported in Data ONTAP Cluster-Mode. "svo_reject_errors" (value: "on" | "off") Setting this option to "on" enables SnapValidator functionality to reject any write to the volume which fails the SnapValidator checks. This option only applies to non-root volumes. This option is unsupported in Data ONTAP Cluster-Mode. "thorough_scrub" (value: "on" | "off") Traditional volumes only. Setting the option to "on" enables thorough scrub on a block checksum volume. That means that a scrub will initialize any zeroed checksum entries that it finds. If there are any checksum entries to be initialized, scrub will run slower than normal. "snaplock_autocommit_period" (value: "none" | h|d|m|y) SnapLock volumes only. This option defines the criteria for committing files to WORM on a SnapLock volume by the autocommit scanner. h, d, m, y denote hours, days, months and years respectively. The default value of this option is "none" that corresponds to autocommit being disabled in the SnapLock volume. The minimum autocommit period on a SnapLock volume is 2h. Any valid value other than "none", specified in hours (h), days (d), months (m) or years (y) would trigger the autocommit scanner on the Snaplock volume. "snaplock_default_period" (value : min | max | infinite | s|h|d|m|y) This option can be set only for SnapLock volumes and specifies the default retention period that will be applied to files committed to WORM state without an associated retention period. If this option value is min then snaplock_minimum_period is used as the default retention period. If this option value is max then snaplock_maximum_period is used as the default retention period. If this option value is infinite then infinite retention period will be used as the default retention period. WORM files with infinite retention period are retained forever. The retention period can also be explicitly specified as a number followed by a suffix. The valid suffixes are s for seconds, h for hours, d for days, m for months and y for years. For example, a value of 6m represents a retention period of 6 months. The maximum valid retention period is 70 years. This option is not applicable while extending retention period of an already committed WORM file "snaplock_maximum_period" (value: infinite | s|h|d|m|y) This option can be set only for SnapLock volumes and specifies the maximum allowed retention period for files committed to WORM state on the volume. Any file committed with a retention period longer than snaplock_maximum_period will be assigned a retention period equal to snaplock_maximum_period. If this option value is infinite then files can be committed for infinite retention period in the volume. WORM files with infinite retention period are retained forever. The retention period can also be explicitly specified as a number followed by a suffix. The valid suffixes are s for seconds, h for hours, d for days, m for months and y for years. For example, a value of 6m represents a retention period of 6 months. The maximum valid retention period is 70 years. This option is not applicable while extending retention period of an already committed WORM file "snaplock_minimum_period" (value: infinite | s|h|d|m|y) This option can only be set for SnapLock volumes and specifies the minimum allowed retention period for files committed to WORM state on the volume. Any file committed with a retention period shorter than snaplock_minimum_period will be assigned a retention period equal to snaplock_minimum_period. If this option value is infinite then every file committed to the volume will have a infinite retention period. WORM files with infinite retention period are retained forever. The retention period can also be explicitly specified as a number followed by a suffix. The valid suffixes are s for seconds, h for hours, d for days, m for months and y for years. For example, a value of 6m represents a retention period of 6 months. The maximum valid retention period is 70 years. This option is not applicable while extending retention period of an already committed WORM file
> option-value |  | string | The value to set the named option (except for option 'root', which has no associated value).
> volume |  | string | Name of the volume for which we want to set an option.

> Errno | Description
> EINTERNALERROR |  |
> ESWAPFILENOSPACE |  |
> EVOLUMEBUSY |  |
> EVSERVERNOTFOUND |  |
> EOBJECTNOTFOUND |  |
> EMULTIPLEVOLSFOUND |  |
> EONTAPI_EVOLOPNOTSUPP |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EINCOMPATIBLE_AUTOSHRINK_AUTODELETE_TRY_FIRST |  |

> Vfiler-enabled
> Yes

volume-set-total-files | [top]

> Set a volume's 'files-total' value to the given quantity. This specifies the maximum number of user-visible files that the given volume can hold, as reported by the 'files-total' value within: - the 'volumes' output parameter of the Data ONTAP 7-Mode 'volume-list-info' API, and - the 'attributes-list' output parameter of the Data ONTAP Cluster-Mode 'volume-get-iter' API. Note that this interface corresponds to the following Data ONTAP 7-Mode 'maxfiles' console command and Data ONTAP Cluster-Mode 'volume modify' console command: 'maxfiles <vol-name> <requested_new_max>' 'volume modify -vserver <vserver-name> -volume <volume-name%gt -files <requested_new_max>'

> Input Name | Range | Type | Description
> force |  | boolean optional | Indicates whether the filer should reject a legal but "unreasonable" (seemingly too large) value for 'requested-total-files', or accept it without question. By default, legal but "unreasonable" values are rejected.
> requested-total-files |  | integer validate | Specifies the new value for the volume's 'files-total' field. This value must be larger than the volume's current 'files-total' value, and can never be larger than the number of 4KB blocks in the volume. The filer may actually choose a smaller value so as to comply with certain internal accounting and alignment requirements. Once this value has been increased for a volume, it cannot be reduced below the value of 'inodefile-public-capacity' for that volume. Range : [0..2^31-1]
> volume |  | string | The name of the volume whose 'files-total' field we wish to set. The chosen volume must be online and not read-only for this operation to succeed.
> Output Name | Range | Type | Description
> resulting-total-files |  | integer | The quantity to which the given volume's 'files-total' field was actually set after all internal requirements and alignments were computed. This quantity will never be larger than 'requested-total-files', and never be smaller than the volume's 'inodefile-public-capacity' value before the request. Range : [0..2^31-1]

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMEBUSY |  |
> EVSERVERNOTFOUND |  |
> EVSERVEROPNOTALLOWED |  |
> EOBJECTNOTFOUND |  |
> EMULTIPLEVOLSFOUND |  |

> Vfiler-enabled
> Yes

volume-size | [top]

> Given the name of a flexible volume, either return its current size or set the volume's size to the stated amount. This API is not supported for Infinite Volumes. Also, this API does not allow to set the volume's size from vFiler context.

> Input Name | Range | Type | Description
> new-size |  | string optional | Specify the flexible volume's new size using the following format: [+|-]< number > k|m|g|t] If a leading '+' or '-' appears, it indicates that the given flexible volume's size is to be increased or decreased (respectively) by the indicated amount, else the amount is the absolute size to set. The optional trailing 'k', 'm', 'g', and 't' indicates the desired units, namely 'kilobytes', 'megabytes', 'gigabytes', and 'terabytes' (respectively). If the trailing unit character doesn't appear, then < number > is interpreted as the number of bytes desired. The file system size of a readonly replica flexible volume, such as a snapmirror destination, is determined from the replica source. In such cases, the value set using "volume-size" is interpreted as an upper limit on the size. A flexible volume that's not a readonly replica which has the "fs_size_fixed" option set may have its size displayed, but not changed. Attempting to set the volume size in this case will result in failure and a EINTERNALERROR error code. Users must be able to adjust readonly replica flexible volume size in order to maintain enough capacity to accommodate transfers from the replica source. Attempting to set a readonly replica destination size to be less than that of its source will result in a failure indicated by the EONTAPI_ENOSPC error code. This option is not applicable from vFiler context. Attempting to set volume size from vfiler context will result in failure with EINTERNALERROR error code being returned.
> volume |  | string | The name of the flexible volume for which we want to get or set its size.
> Output Name | Range | Type | Description
> is-fixed-size-flex-volume |  | boolean optional | Is the flexible volume filesystem size fixed?
> is-readonly-flex-volume |  | boolean optional | Is this flexible volume read only?
> is-replica-flex-volume |  | boolean optional | Is this flexible volume a replica volume?
> volume-size |  | string | Either the size we found the given volume to be or the size to which the volume was set (if we're setting its size via the 'new-size' argument above).

> Errno | Description
> EINTERNALERROR |  |
> EONTAPI_ENOSPC |  |
> EVOLUMEBUSY |  |
> EVSERVERNOTFOUND |  |
> EVSERVER_OP_NOT_ALLOWED |  |
> EINVALIDINPUTERROR |  |
> EOBJECTNOTFOUND |  |
> EMULTIPLEVOLSFOUND |  |

> Vfiler-enabled
> Yes

volume-space-list-info | [top]

> Return a list of volumes and a breakdown of their space usage. This information is only available for online volumes. If no volume is specified, status is displayed for all online volumes on the filer. Note that if space status information for more than 20 volumes is desired, the volume-space-list-info-iter-* ZAPIs will be more efficient and should be used instead.

> Input Name | Range | Type | Description
> volume |  | string optional | The name of the volume for which we want status information. If not supplied, then we want status for all volumes on the filer.
> Output Name | Range | Type | Description
> vol-space-infos |  | vol-space-info[] | List of volumes and their space information.

> Errno | Description
> EVOLUMEDOESNOTEXIST |  |
> EVOLUMEOFFLINE |  |
> EVOL_RESTRICTED |  |
> EINTERNALERROR |  |

volume-space-list-info-iter-end | [top]

> Terminate a list iteration and clean up any saved info.

> Input Name | Range | Type | Description
> tag |  | string | Tag from a previous volume-space-list-info-iter-start.

volume-space-list-info-iter-next | [top]

> Continues an iteration through the list of volumes.

> Input Name | Range | Type | Description
> maximum |  | integer | The maximum number of entries to retrieve.
> tag |  | string | Tag from a previous volume-space-list-info-iter-start.
> Output Name | Range | Type | Description
> records |  | integer | This tells you how many records are being returned from this particular call to volume-space-list-info-iter-next. When this value is 0, you have retrieved everything.
> vol-space-infos |  | vol-space-info[] | List of volumes and their status information. See volume-space- list-info for a description of type vol-space-info.

volume-space-list-info-iter-start | [top]

> Starts an iteration through the list of volumes.

> Input Name | Range | Type | Description
> volume |  | string optional | The name of the volume for which we want space status information. If not supplied, then we display space status for all volumes on the filer.
> Output Name | Range | Type | Description
> records |  | integer | This tells you the number of items that have been saved for future retrieval with volume-space-list-info-iter-next.
> tag |  | string | Tag to be used in subsequent iterations.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMEDOESNOTEXIST |  |
> EVOL_RESTRICTED |  |

volume-split | [top]

> Remove the specified plex from a mirrored traditional volume and create a new unmirrored traditional volume with the specified name that contains the split-off plex. The original mirrored traditional volume becomes unmirrored. The plex to be split from the original traditional volume must be functional (not partial), but it could be inactive, resyncing, or out-of-date. A 'volume-split' operation can therefore be used to gain access to a plex that is not up to date with respect to its partner plex if its partner plex is currently failed. If the plex is offline at the time of the split, the resulting traditional volume will also be offline. Otherwise, the resulting traditional volume will be in the same online/offline/restricted state as the original traditional volume. Note that a split mirror can be joined back together via the "victim-volume" option to "volume-mirror".

> Input Name | Range | Type | Description
> new-volume-name |  | string | Name of the new traditional volume to create from the split plex.
> plex |  | string | Name of the plex to split out of its traditional volume.

> Errno | Description
> EINTERNALERROR |  |
> EVOLUMEPLEXINVALID |  |

volume-verify-list-info | [top]

> Get the status of RAID mirror verification on the named traditional volume. Status includes percentage complete and whether it's currently suspended.

> Input Name | Range | Type | Description
> volume |  | string optional | Name of an existing mirrored traditional volume. If no name is given, then mirror verification status is generated for all aggregates currently being verified (including the ones embedded in traditional volumes).
> Output Name | Range | Type | Description
> verify-details |  | verify-detail-info[] | List of aggregates (including the ones embedded in traditional volumes) and their RAID mirror verification status.

> Errno | Description
> EINTERNALERROR |  |

volume-verify-resume | [top]

> Resume RAID mirror verification on the named traditional volume. If no name is given, then resume RAID mirror verification on all aggregates (including those embedded in traditional volumes) that have been suspended.

> Input Name | Range | Type | Description
> volume |  | string optional | Name of the existing traditional volume for which RAID mirror verification is to resume.

> Errno | Description
> EINTERNALERROR |  |

volume-verify-start | [top]

> Start RAID mirror verification on the named traditional volume. RAID mirror verification compares the data in both plexes of a mirrored aggregate (whether it's free-standing or embedded in a traditional volume). In the default case, any blocks that differ are logged and no changes are made. The fix-plex option is used to fix any mismatches. It specifies which plex to fix. If no name is given, then RAID mirror verification is started on all online aggregates (including those embedded in traditional volumes). Use either the "aggr-verify-list-info" or "volume-verify-list-info" API to check RAID mirror verification status. If the fix-plex option is used, then a name must be specified.

> Input Name | Range | Type | Description
> fix-plex |  | integer optional | If provided, this specifies the plex to fix in case the two plexes do not match. The default is to log any discrepancies instead of fixing them.
> log-only |  | boolean optional | If provided, and if the value is "true", then simply log any discrepancies instead of fixing them. The default value is "true". If log-only is "false", then the fix-plex option must also be specified. If log-only is "true" and fix-plex is also specified, then the log-only option will be ignored.
> volume |  | string optional | Name of the mirrored traditional volume to verify.

> Errno | Description
> EINTERNALERROR |  |

volume-verify-stop | [top]

> Stop RAID mirror verification on the named traditional volume. If no name is given, stop RAID mirror verification on all aggregates (including those embedded in traditional volumes) currently being verified.

> Input Name | Range | Type | Description
> volume |  | string optional | Name of the traditional volume for which we are to stop RAID mirror verification.

> Errno | Description
> EINTERNALERROR |  |

volume-verify-suspend | [top]

> Suspend RAID mirror verification on the named traditional volume. If no name is given, suspend mirror verification on all aggregates (including those embedded in traditional volumes) currently being verified.

> Input Name | Range | Type | Description
> volume |  | string optional | Name of the traditional volume for which we are to suspend RAID mirror verification.

> Errno | Description
> EINTERNALERROR |  |

volume-wafl-info | [top]

> DEFINED HERE FOR BACKWARDS COMPATIBILITY ONLY. CHANGE OVER TO USING THE NEW 'volume-get-filer-info' AS SOON AS POSSIBLE. Get WAFL status information.

> Output Name | Range | Type | Description
> checksum-types |  | string | Checksum type. The possible values: "zoned" - if all volumes are Fixed VBN, "block" - if all volumes are Block Appended, "mixed" - if volumes are mixed Fixed VBN and Block Appended and Advanced Zoned, "none" - if no volumes have zoned or block or advanced_zoned checksum (azcs) or mixed, "advanced_zoned" - if all volumes in the system have Advanced Zoned Checksum scheme.
> disk-types |  | string | Type of disks. Possible values: 512, 520, 4096, mixed, none. "512" if all disks 512 BPS, "520" if all disks 520 BPS, "4096" if all disks 4096 BPS, "mixed" if disks are mixed 512 BPS, 520 BPS and 4096 BPS, "none" if no disks have 512 or 520 or 4096 BPS.
> root-volume |  | string | Current root volume.
> snapshots-max |  | integer | Maximum number of snapshots available. Range : [0..2^31-1].

> Errno | Description
> EINTERNALERROR |  |

Element definition: clone-split-detail-info | [top]

> Status information about an active clone split.

> Name | Range | Type | Description
> blocks-scanned |  | integer | Number of the clone's blocks that have been scanned to date by the split.
> blocks-updated |  | integer | Total number of the clone's blocks that have been updated to date by the split.
> inode-percentage-complete |  | integer | Percent of the clone's inodes processed to date by the split.
> inodes-processed |  | integer | Number of the clone's inodes processed to date by the split.
> inodes-total |  | integer | Total number of inodes in the clone.
> name |  | string | Name of the clone being split.

Element definition: clone-split-estimate-info | [top]

> Estimate information about a future clone split.

> Name | Range | Type | Description
> estimate-blocks |  | integer | The estimated number of 4kb blocks required to perform the volume clone split.

Element definition: disk-info | [top]

> Information for each disk in the plex.

> Name | Range | Type | Description
> name |  | string | Name of a member disk.

Element definition: errors-warnings-info | [top]

> All the warnings if is-override-warnings is true

> Name | Range | Type | Description
> error-warning |  | string | Error or warning

Element definition: guarantee | [top]

> Type of guarantee

> Name | Range | Type | Description
> type |  | string | guarantee that is supported on a given volume. Possible values are: "volume", "file", "partial", "none"

Element definition: mediascrub-detail-info | [top]

> Information about media scrubbing.

> Name | Range | Type | Description
> mediascrub-status |  | string | Possible values are "suspended", "disabled" and "enabled" "suspended": Media scrub is enabled but temporarily paused because another task is running or it is in the idle cycle of its periodic run. It will resume automatically when the task is done or the idle cycle ends. "disabled": Media scrub feature is turned off. "enabled": Media scrub feature is active.
> percentage-complete |  | integer optional | Media scrubbing percentage complete. Range: [0..100].
> raid-group |  | string | Name of the RAID group.

Element definition: raidgroup-size-info | [top]

> Default, minimum and maximum raidgroup size for each RAID type supported on this filer.

> Name | Range | Type | Description
> default-size |  | integer | Default size of a RAID group of this type in aggregates. Range : [6..16].
> maximum-size |  | integer | Maximum size of a RAID group of this type in aggregates. Range : [6..28].
> minimum-size |  | integer | Minimum size of a RAID group of this type in aggregates. Possible values: 2, 3.
> raidtype |  | string | Name of the RAID type allowed on this filer. Possible values: raid0, raid4, raid_dp.

Element definition: raidtype-info | [top]

> RAID types allowed on this filer.

> Name | Range | Type | Description
> raidtype |  | string | Name of an allowed RAID type. Possible values: raid0, raid4, raid_dp.

Element definition: scrub-detail-info | [top]

> Scrubbing information.

> Name | Range | Type | Description
> is-suspended |  | boolean | Suspended state of the scrub on that RAID group.
> last-scrub-timestamp |  | integer optional | Time at which the last full scrub completed. If a scrub has never been performed, this value will not be returned. The time value is in seconds since January 1, 1970. Range : [0..2^31-1].
> percentage-complete |  | integer optional | Scrubbing percentage complete. I scrubbing is not active, this value will not be returned. Range : [0..100].
> raid-group |  | string | Name of the RAID group involved in the scrub.

Element definition: verify-detail-info | [top]

> Information about mirror verification.

> Name | Range | Type | Description
> is-suspended |  | boolean | Is mirror verification suspended for this aggregate?
> name |  | string | Name of the aggregate.
> percentage-complete |  | integer optional | Mirror verification percentage complete. If verification isn't active, this value won't be returned. Range: [0..100].

Element definition: vol-footprint-info | [top]

> Details of space utilization footprint in the hosting aggregate.

> Name | Range | Type | Description
> aggregate-size | [0..2^63-1] | integer | This field represents the total aggregate size in bytes.
> dedupe-metafiles-footprint | [0..2^63-1] | integer | This field represents temporary deduplication metadata footprint in bytes.
> dedupe-metafiles-temporary-footprint | [0..2^63-1] | integer | This field represents temporary deduplication metadata footprint in bytes.
> delayed-free-footprint | [0..2^63-1] | integer | This field represents the delayed free footprint in bytes. This system is used to improve delete performance by batching delete requests.
> flexvol-metadata-footprint | [0..2^63-1] | integer | This field represents flexible volume metadata in bytes.
> snapmirror-destination-footprint | [0..2^63-1] | integer | This field represents the SnapMirror destination footprint in bytes.
> tape-backup-metafiles-footprint | [0..2^63-1] | integer | This fields represents the tape backup metadata footprint in bytes.
> total-footprint | [0..2^63-1] | integer | This field represents the total footprint in bytes. It is based on the sum of all of the components of the volume's footprint in its parent aggregate.
> volume |  | string | Name of the volume.
> volume-data-footprint | [0..2^63-1] | integer | This field represents the footprint of data written to the volume in bytes.
> volume-guarantee-footprint | [0..2^63-1] | integer | This field represents the volume guarantee footprint in bytes. Alternatively, it is the space reserved for future writes in the volume.

Element definition: vol-move-status-info | [top]

> status of each move

> Name | Range | Type | Description
> current-transfer | [0..2^60-1] | integer optional | Amount of data in KB being transferred in current transfer. Appears only in verbose mode. The maximum value is the size of the volume.
> cutover-attempts | [-1..2^31-1] | integer | Number of cutover attempts. A value of -1 signifies manual cutover.
> cutover-window | [60..2^64-1] | integer | Length of the cutover-window in seconds.
> dest-aggregate |  | string | Name of aggregate where the volume is being moved
> dest-volume |  | string optional | Name of (temporary) destination volume. Appears only in verbose mode.
> error-string |  | string optional | Error encountered during the move
> last-transfer-duration | [0..2^63-1] | integer optional | Time taken for the last completed transfer in seconds. Appears only in verbose mode. There is no upper limit on how long this can take.
> last-transfer-size | [0..2^60-1] | integer optional | The size in KB (1024) of the last completed transfer. Appears only in verbose mode. The maximum value is the size of the volume.
> move-state |  | string | Status of the move. Possible values are "setup", "move", "cutover", "abort", "setup(paused)", "move(paused)".
> pause-reason |  | string optional | Reason for the pause state of the move
> source-volume-name |  | string | Name of volume being moved

Element definition: vol-space-info | [top]

> Space utilization details.

> Name | Range | Type | Description
> dedupe-metafiles | [0..2^63-1] | integer | This field represents space used by deduplication metafiles in bytes.
> dedupe-metafiles-temporary | [0..2^63-1] | integer | This field represents space used by temporary deduplication metafiles in bytes.
> filesystem-metadata | [0..2^63-1] | integer | This field represents volume filesystem metadata in bytes.
> inodes | [0..2^63-1] | integer | This field represents space used by inode metadata in bytes.
> quota-metafiles | [0..2^63-1] | integer | This field represents space used by quota metafiles in bytes.
> snapmirror-metadata | [0..2^63-1] | integer | This field represents space used by metafiles during SnapMirror operations in bytes.
> snapshot-reserve | [0..2^63-1] | integer | This field represents the size in bytes in the volume of space that has been set aside as a reserve for Snapshot usage.
> snapshot-spill | [0..2^63-1] | integer | This field represents space used by Snapshot copies when it exceeds the size of the Snapshot reserve in bytes. It is computed as Snapshot used minus Snapshot reserve when Snapshot used exceeds Snapshot reserve.
> total-used | [0..2^63-1] | integer | This field represents the total used space in the volume in bytes. This value is based on user data, metadata that resides in the volume, and Snapshot reserve.
> user-data | [0..2^63-1] | integer | This field represents user data in bytes. If space is reserved to overwrite data in the volume, it is included in this value.
> volume |  | string | Name of the volume
> volume-size | [0..2^63-1] | integer | This field represents the total volume size in bytes.

Element definition: volume-info | [top]

> Volume status information.

> Name | Range | Type | Description
> autosize |  | autosize-info optional | Display autosize settings of the volume. Appears only under "verbose" mode.
> block-type |  | string | The indirect block format of the volume. Possible values: 32_bit, 64_bit.
> checksum-style |  | string | The style of RAID checksum used (for a traditional volume; for a flexible volume, the corresponding value of its containing aggregate). The possible values: "advanced_zoned" - advanced_zoned checksum (azcs), "block" - block, "mixed" - mixed, "none" - none, "unknown" - unknown "wafl" - wafl, "zoned" - zoned.
> clone-children |  | clone-child-info[] optional | Flexible volumes only. This field appears for a flexible volume if it is the parent of one or more clones.
> clone-parent |  | clone-parent-info[] optional | Flexible volumes only. This field appears for a flexible volume if it is a clone of another flexible volume, describing the clone's parentage.
> compression |  | compression-info | Note that the use of this element is deprecated, refer to the 'dense-status' element for compression status instead.
> containing-aggregate |  | string optional | Flexible volumes only. The name of the aggregate in which the given flexible volume resides.
> disk-count |  | integer | Total number of associated disks (for a traditional volume; for a flexible volume, the corresponding value of its containing aggregate). Range : [0..2^31-1]
> expiry-date |  | integer optional | Expiry date of the SnapLock volume in seconds in the standard UNIX format (since 01/01/1970 00:00:00) is displayed. Range:[0..2^64-1]. The flag is-wraparound indicates if this date is in the normal format or is wrapped around. This field is not included if 1. the volume has an infinite expiry-date 2. the volume is offline 3. the volume has scan in progress 4. the volume is regular volume 5. the volume has no expiry date. The volume is SnapLock volume (is-snaplock is "true") with no WORM files and no WORM snapshots.
> files-private-used |  | integer | Number of system (not user-visible) files (inodes) used. If the volume is restricted or offline, a a value of 0 is returned. Range : [0..2^64-1].
> files-total |  | integer | Total user-visible file (inode) count, i.e., current maximum number of user-visible files (inodes) that this volume can currently hold. If the volume is restricted or offline, a value of 0 is returned. Range : [0..2^64-1].
> files-used |  | integer | Number of user-visible files (inodes) used. If the volume is restricted or offline, a value 0 returned. Range : [0..2^64-1].
> filesystem-size |  | integer | Filesystem size (in bytes) of the volume. This is the total usable size of the volume, not including WAFL reserve. This value is the same as Size except for certain SnapMirror destination volumes. It is possible for destination volumes to have a different filesystem-size because the filesystem-size is sent across from the source volume. If the volume is restricted or offline, a value of 0 is returned. Range : [0..2^64-1].
> formatted-expiry-date |  | string optional | Expiry date of the SnapLock volume in a human-readable format :: is displayed. A value of "infinite" indicates that the volume has an infinite expiry date. A value of "scan_in_progress" indicates that expiry date is not displayed since worm scan on the volume is in progress. A value of "no_expiry_date" indicates that expiry date is not displayed since the SnapLock volume has no WORM files and WORM snapshots. This field is not included if the volume is offline or the volume is regular volume (is-snaplock is "false").
> formatted-snaplock-volume-compliance-clock |  | string optional | If Compliance Clock is initialized then human readable time :: is displayed. This field will be present only for SnapLock volumes.
> hybrid-cache-eligibility |  | string | hybrid cache eligibility. Valid values are "read","read-write" and "none". Volumes which report "read" can support only read caching. Volumes which report "read-write" support both read and write caching. "none" means no hybrid caching support.
> hybrid-cache-write-caching-ineligibility-reason |  | string optional | informs why the volume cannot participate in write caching. This field is valid only if the volume can participate in read caching but not write caching.
> inodefile-private-capacity |  | integer | Number of inodes that can currently be stored on disk for system (not user-visible) files. This number will dynamically increase as more system files are created. If the volume is restricted or offline, a value of zero is returned. Range : [0..2^64-1].
> inodefile-public-capacity |  | integer | Number of inodes that can currently be stored on disk for user-visible files. This number will dynamically increase as more user-visible files are created. If the volume is restricted or offline, a value of zero is returned. Range : [0..2^64-1].
> is-checksum-enabled |  | boolean | Whether RAID checksums are enabled (for a traditional volume; for a flexible volume, the corresponding value of its containing aggregate).
> is-in-snapmirror-jumpahead |  | boolean optional | True when the volume is in the process of SnapMirror jump ahead. Default value is false. This field is returned only for online volumes.
> is-inconsistent |  | boolean | Whether or not there is known inconsistency in the associated file system.
> is-invalid |  | boolean optional | Whether or not this volume is invalid. Volumes typically become invalid as a result of an aborted 'vol copy' or SnapMirror(R) initial transfer. In such a case a volume is in a half created state and cannot be recovered. By default, this field is FALSE.
> is-snaplock |  | boolean | Whether or not this is a SnapLock volume.
> is-unrecoverable |  | boolean optional | Whether or not there is known inconsistency in the associated file system and it is not recoverable. This value is only present for flexible volumes. By default, this field is FALSE.
> is-wraparound |  | boolean optional | True if the date represented in expiry-date is a wrap around date. SnapLock wraps around the expiry date to indicate dates after 01/19/2038. It remaps 01/01/1970 - 12/31/2002 to 01/19/2038 - 01/19/2071. This field is not included if 1. the volume has an infinite expiry date 2. the volume is offline 3. the volume has scan in progress 4. the volume is regular volume (is-snaplock is "false") 5. the volume has no expiry date. The volume is SnapLock volume (is-snaplock is "true") with no WORM files and no WORM snapshots.
> mirror-status |  | string | The RAID mirror status (for a traditional volume; for a flexible volume, the corresponding value of its containing aggregate). Possible values: CP count check in progress, failed, invalid, limbo, mirror degraded, mirror resynchronizing, mirrored, needs CP count check, uninitialized, <unknown mirror state>, and unmirrored.
> name |  | string | Name of the volume.
> owning-vfiler |  | string optional | Name of the vfiler which owns this volume. This value will be returned only if the request is coming to vfiler0 and MultiStore is licensed.
> percentage-used |  | integer optional | Percentage of the volume size that is used. If the volume is restricted or offline, a value of 0 is returned. Range : [0..100].
> plex-count |  | integer | Number of plexes (for a traditional volume; for a flexible volume, the corresponding value of its containing aggregate). This is also the size of the "plex" array that appears below. A plex is composed of one or more RAID groups that have been lashed together to serve as the unit for RAID mirroring. Range : [0..2^31-1]
> plexes |  | plex-info[] | List of plexes for this volume (for a traditional volume; for a flexible volume, the corresponding value of its containing aggregate).
> quota-init |  | integer | Quota state and percent initialized. 100% means that quotas are on, 0% means quotas are off, and anywhere inbetween means that quotas are initializing. Range : [0..100].
> raid-size |  | integer | The current RAID group size (for a traditional volume; for a flexible volume, the corresponding value of its containing aggregate). Range : [0..2^31-1].
> raid-status |  | string | The current RAID status (for a traditional volume; for a flexible volume, the corresponding value of its containing aggregate). Possible values: copying, degraded, foreign, growing, initializing, invalid, ironing, mirror degraded, mirrored, needs check, noparity, normal, out-of-date, partial, raid0, raid4, raid_dp, reconstruct, resyncing, snapmirrored, verifying, unrecoverable. This field can contain a combination of the above status values in a comma separated list; for example: "reconstruct,growing".
> remote-location |  | string optional | Displays the remote host and remote volume where the origin of the cache is located. Returned in format: : Present only if flex volume is a FlexCache. Remote Host: Should be formatted as either the DNS hostname or as an IP address. Remote Volume: Should be formatted the same as a volume name.
> reserve |  | integer | Number of bytes reserved for overwriting snapshotted data in an otherwise full volume. This space is usable only by space-reserved LUNs and files, and then only when the volume is full. It is equal to reserve-required if the value of the fractional_reserve option is set to the default value of 100%, but otherwise may be less than reserve-required. If the volume is restricted or offline, a value of 0 is returned. Range : [0..2^64-1]
> reserve-required |  | integer | The number of reserved bytes that are required to ensure that the reserved space is sufficient to allow all space reserved files and LUNs to be overwritten when the volume is full. If the volume is restricted or offline, a value of 0 is returned. Range : [0..2^64-1].
> reserve-used |  | integer | Number of reserved bytes that is not available for new overwrites. The number includes both reserved bytes which have actually been used for overwrites as well as bytes which were never allocated in the first place. On a volume without free space, the "never allocated" component can become non-zero when reserve-required increases as holes are filled in. Because of this, the reserve-used value can exceed the number of snapshotted bytes. The reserve-used value can also exceed the value of reserve-required, as the filer maintains a small hidden reserve of last resort. If the volume is restricted or offline, a value of 0 is returned. Range : [0..2^64-1].
> reserve-used-actual |  | integer | Number of reserved bytes that have been used. This value is computed as the smaller of: (1) snapshotted bytes not in the active filesystem, and (2) reserve-used. This formula comes from the observation that you cannot have used more overwrite reserved than have actually overwritten data. This value can exceed the value of reserve-required, as the filer maintains a small hidden reserve of last resort. If the volume is restricted or offline, a value of 0 is returned. Range : [0..2^64-1].
> sis |  | sis-info optional | Display the Single Instance Storage (SIS) related status and statistics if the volume is a SIS volume.
> size-available |  | integer | Number of bytes still available in the volume. If the volume is restricted or offline, a value of 0 is returned. Range : [0..2^64-1].
> size-total |  | integer | Total usable size (in bytes) of the volume, not including WAFL reserve or volume snapshot reserve. If the volume is restricted or offline, a value of 0 is returned. Range : [0..2^64-1].
> size-used |  | integer | Number of bytes used in the volume. If the volume is restricted or offline, a value of 0 is returned. Range : [0..2^64-1].
> snap-autodelete |  | snap-autodelete-info optional | Display the snapshot autodelete policy related status of the volume. Appears only under "verbose" mode.
> snaplock-type |  | string optional | The type of the snaplock volume. It is present for snaplock volumes only, i.e. volumes for which is-snaplock is "true". Possible values - "compliance" or "enterprise"
> snaplock-volume-compliance-clock |  | integer optional | If Compliance Clock is initialized then time in seconds in the standard UNIX format (since 01/01/1970 00:00:00) is displayed. This field will be present only for SnapLock volumes. Range:[0..2^64-1].
> snapshot-blocks-reserved |  | integer | The number of 1024 byte blocks that has been set aside as reserve for snapshot usage. This is same as "blocks-reserved" in snapshot-get-reserve API output. Range : [0..2^64-1].
> snapshot-percent-reserved |  | integer | The percentage of disk space that has been set aside as reserve for snapshot usage. This is same as "percent-reserved" in snapshot-get-reserve API output. Range : [0..100].
> space-reserve |  | string optional | Flexible volumes only. The storage guarantee associated with the flexible volume. Possible values: none, file, volume. This field does not appear if the flexible volume is restricted or offline.
> space-reserve-enabled |  | boolean optional | Flexible volumes only. Whether or not the storage guarantee associated with the flexible volume is currently in effect. This field does not appear if the flexible volume is restricted or offline.
> state |  | string | State of the volume. Possible values: "offline", "online", "restricted" and "unknown" for both flexible and traditional volumes, and "creating", "failed", and "partial" specifically for traditional volumes.
> transition |  | transition-info optional | Information relating to any transition jobs running or previously run on this volume.
> type |  | string | The type of volume. Possible values: "flex" for flexible volumes, and "trad" for traditional volumes.
> uuid |  | string | Universal unique identifier (UUID) for the volume.
> vm-align |  | vm-align-info optional | Information related to the Virtual Machine alignment settings on the volume.
> volume-64bit-upgrade |  | volume-64bit-upgrade-info optional | Information related to 64-bit upgrade. After 64-bit upgrade completes, this information is no longer available.

Element definition: volume-option-info | [top]

> Option key and value.

> Name | Range | Type | Description
> name |  | string | Option key.
> value |  | string | Option value.

Element definition: autosize-info | [top]

> Autosize settings of the volume This appears only if the "verbose" parameter above is set to "true".

> Name | Range | Type | Description
> grow-threshold-percent | [0..100] | integer optional | The trigger capacity percentage at which the volume automatiacally grows.
> increment-size | [0..2^63-1] | integer optional | The increment size by which the volume would be grown, in kbytes.
> is-enabled |  | boolean optional | This element is deprecated in Data ONTAP 8.2 and later. Please use autosize-mode instead. The value of 'true' means that autosize is enabled, while 'false' means that the autosize mode is 'off'.
> maximum-size | [0..2^63-1] | integer optional | The maximum size to which the volume would be grown automatically, in kbytes.
> minimum-size | [0..2^63-1] | integer optional | The minimim size to which the volume can be shrunk automatically, in kbytes.
> mode |  | string optional | Defines the current mode of volume autosize. Legal modes include "grow", "grow_shrink", and "off".
> shrink-threshold-percent | [0..100] | integer optional | The trigger capacity percentage at which the volume automatically shrinks.

Element definition: clone-child-info | [top]

> Information describing each of the clones that are children of the current flexible volume.

> Name | Range | Type | Description
> clone-child-name |  | string | The name of a clone volume whose parent is the given flexible volume.

Element definition: clone-parent-info | [top]

> Information describing the parentage of a flexible volume clone.

> Name | Range | Type | Description
> parent-snapshot-name |  | string | The name of the snapshot in 'parent-volume-name' serving as the parent of this clone.
> parent-volume-name |  | string | The name of the flexible volume serving as the parent of this clone.

Element definition: compression-info | [top]

> Note that the use of this element is deprecated, refer to the 'dense-status' element for compression status instead.

> Name | Range | Type | Description
> is-compression-enabled |  | string | Note that the use of this field is deprecated, refer to the 'is-compression-enabled' field in the 'dense-status' element instead.

Element definition: plex-info | [top]

> Information for a plex.

> Name | Range | Type | Description
> is-online |  | boolean | "true" if the plex is online, "false" otherwise.
> is-resyncing |  | boolean | "true" if the plex is currently resyncing, "false" otherwise.
> name |  | string | Plex name, e.g. /myvol/plex0
> plex-status |  | string optional | Plex status. Possible values: "normal", "failed", "empty", "invalid", "uninitialized", "failed assimilation", "limbo", "active", "inactive", "resyncing", These values may appear by themselves or in combination separated by commas (e.g., "normal,active")
> pool | [0..1] | integer optional | The pool to which the majority of disks in the plex belong.
> raid-groups |  | raid-group-info[] optional | List of all RAID groups in the plex. This appears only if the "verbose" parameter above is set to "true".
> resync-level | [0..1] | integer optional | If the plex is currently being resynced, then the resync level.
> resyncing-percentage |  | integer optional | If the plex is currently being resynced, then the completion percentage. Range : [0..100].

Element definition: sis-info | [top]

> Status and statistics for the SIS volume.

> Name | Range | Type | Description
> compress-saved |  | integer | The total disk space saved due to compression in KB (1024 Bytes) on the referenced file system. Range: [0 - 2^64-1]
> dedup-saved |  | integer | The total disk space saved due to deduplication in KB (1024 Bytes) on the referenced file system. Range: [0 - 2^64-1]
> last-operation-begin |  | string | Start timestamp of the last SIS operation.
> last-operation-end |  | string | End timestamp of the last SIS operation.
> last-operation-error |  | string | A human readable error message of the last SIS operation. Present when there was an error.
> last-operation-size |  | integer | The size in bytes of the last SIS operation. Range : [0..2^64-1].
> percent-compress-saved |  | integer | The percentage of disk space saved by compression on the referenced file system. Range: [0 - 100]
> percent-dedup-saved |  | integer | The percentage of disk space saved by deduplication on the referenced file system. Range: [0 - 100]
> percent-total-saved |  | integer | The percentage of disk space saved by compression & deduplication on the referenced file system. Range: [0 - 100]
> percentage-saved |  | integer | Percentage of space savings generated by the shared space. This is calculated as [size-saved / (size-saved + size-used)]. This field appears if the SIS volume is online. Range : [0..100].
> progress |  | string | The progress of the current SIS operation.
> schedule |  | string | The schedule for SIS operation on the volume. See sis-set-config for the format of the schedule.
> size-saved |  | integer | The disk space savings generated by the shared space. The size is in bytes. The size-saved plus the size-used would be the total space usage, if no space is shared. This field appears if the SIS volume is online. Range : [0..2^64-1].
> size-shared |  | integer | Number of bytes in the used space that is shared. This field appears if this SIS volume is online. Range : [0..2^64-1].
> state |  | string | Possible values: "enabled", or "disabled".
> status |  | string | Possible values: "idle", "active", "pending", or "undoing".
> total-saved |  | integer | The total disk space saved by compression & deduplication in KB (1024 Bytes) on the referenced file system. Range: [0 - 2^64-1]
> type |  | string | Possible values: "regular" or "snapvault".

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

> Snapshot autodelete policy settings. This appears only if the "verbose" parameter above is set to "true".

> Name | Range | Type | Description
> commitment |  | string | Possible values: "try", "disrupt", or "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 and LUN clones) to be deleted. Setting this option to "disrupt" only permits the snapshots which are not locked by data backing functionalities (volume and LUN clones) to be deleted.
> defer-delete |  | string | Possible values "scheduled", "user_created", "prefix", or "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.
> delete-order |  | string | Possible values "oldest_first", "newest_first". This option determines if the oldest or newest snapshot is deleted first.
> destroy-list |  | string | Possible values are the combination of "lun_clone", "vol_clone", "cifs_share", "file_clone" or "none". These options specify the list of service that can be destroyed if the snapshot is backing that service. This option is valid only when the commitment is set to destroy.
> prefix |  | string | This option provides the prefix string for the "prefix" value of the "defer_delete" option.
> state |  | string | Possible values: "on" or "off". This option determines if the snapshot autodelete is currently enabled for the volume.
> target-free-space |  | integer | 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. Range: [1..100]
> trigger |  | string | Possible values: "volume", "snap_reserve", or "space_reserve". This option determines the condition in which snapshots should be automatically deleted. Setting this option to "volume" triggers snapshot autodelete to run when the volume is near full. Setting this option to "snap_reseve" triggers snapshot autodelete to run when the snap reserve of the volume is near full. Setting this option to "space_reserve" triggers snapshot autodelete to run when the space reserved in the volume is near full.

Element definition: transition-info | [top]

> Information relating to any transition jobs running or previously run on this volume.

> Name | Range | Type | Description
> transition-state |  | string optional | Indicates the current state of the volume transition operation.
> transitioned |  | boolean optional | Indicates whether the volume has gone through a transition operation.

Element definition: vm-align-info | [top]

> Information relating to Virtual Machine alignment settings on the volume.

> Name | Range | Type | Description
> vm-align-sector | [1..7] | integer optional | The Virtual Machine alignment 512 byte sector number. All files created with the suffix specified in the 'vm-align-suffix' input parameter will have zero-filled <512 * 'vm-align-sector'> bytes data at the beginning so that it's actual data starts at a different offset instead of zero. This is done so that the read & writes to such files are aligned to WAFL's 4k block boundary
> vm-align-suffix |  | string optional | The Virtual Machine alignment suffix. The suffix such as '.xyz' is used to identify the files which needs to be aligned. See the description for 'vm-align-sector' above for more information on this.

Element definition: volume-64bit-upgrade-info | [top]

> Information related to 64-bit upgrade.

> Name | Range | Type | Description
> check |  | volume-64bit-upgrade-check-info optional | Information returned when upgrade-64bit-mode in aggr-add is "check".

Element definition: raid-group-info | [top]

> Information for a particular RAID group.

> Name | Range | Type | Description
> checksum-style |  | string | Checksum style. The possible values: "advanced_zoned" - advanced_zoned checksum (azcs), "block" - block, "mixed" - mixed, "none" - none, "unknown" - unknown, "wafl" - wafl, "zoned" - zoned.
> disks |  | disk-info[] | List of disks in this plex.
> is-cache-tier |  | boolean | "true" if the RAID group is composed of SSDs and the owning aggregate is hybrid (group is not part of usable space).
> is-recomputing-parity |  | boolean | "true" if the RAID group is currently recomputing parity.
> is-reconstructing |  | boolean | "true" if the RAID group is currently reconstructing.
> is-scrub-suspended |  | boolean optional | Suspended state of the scrub on that RAID group.
> last-scrub-timestamp |  | integer optional | Time at which the last full scrub completed. If a scrub has never been performed, this value will not be returned. The time value is in seconds since January 1, 1970. Range : [0..2^31-1].
> name |  | string | RAID group name.
> recomputing-parity-percentage |  | integer optional | The percentage of parity recomputation if is-recomputing-parity is set to true. Range : [0-100]
> reconstruction-percentage |  | integer optional | If reconstruction is going on, the the completion percentage. Range : [0-100]
> scrub-percentage-complete |  | integer optional | Scrub percentage complete. If scrub is not active, this value will not be returned. Range: [0..100].

Element definition: volume-64bit-upgrade-check-info | [top]

> Information returned when upgrade-64bit-mode in aggr-add is "check". Upgrade check results such as "used-space", "available-space", "capacity", and "grow-space" are only updated after the space estimate is completed successfully.

> Name | Range | Type | Description
> age |  | integer optional | The age in seconds of the space check results. Range: [0..2^64-1].
> available-space |  | integer optional | Amount of space (in bytes) that would be available in the volume after it is upgraded to 64-bit. Range: [0..2^64-1].
> capacity |  | integer optional | Percentage of space that would be used in the volume after it is upgraded to 64-bit. Range: [0..100].
> grow-space |  | integer optional | Amount of space (in bytes) the volume must be grown by before successfully upgrading its current data. Range: [0..2^64-1]
> last-errno |  | integer optional | The error code of the last attempt to check for space usage on the specific volume. This field is present only if a 64-bit upgrade check was previously attempted. Possible values: 0 - indicates success EVOLUME_64BIT_UPGRADE_KIREETI_NOT_AVAIL Upgrade check results may be out of date if last-errno is not 0.
> used-space |  | integer optional | Amount of space (in bytes) that would be used in the volume after it is upgraded to 64-bit. Range: [0..2^64-1].

Element definition: disk-info | [top]

> Information for each disk in the plex.

> Name | Range | Type | Description
> name |  | string | Name of a member disk.