APIs in Category: snapshot | API version 3.7.1

snapshot-get-reclaimable-info snapshot-list-info-iter-end snapshot-list-info-iter-next snapshot-list-info-iter-start | DataFabric Manager discovers all the Snapshot copies of all volumes of filers it is monitoring. This set of APIs supports listing the Snapshot copies and also to compute space that could be reclaimed by deleting these Snapshot copies.

NetApp Manage ONTAP

snapshot-get-reclaimable-info | [top]

> Returns the amount of space that would be freed when a set of Snapshot copies are deleted from a specified volume. This API gets information dynamically from the filer and is a blocking call.

> Input Name | Range | Type | Description
> snapshots |  | snapshot[] | List of Snapshot copies. A maximum of 255 Snapshot copies can be listed.
> volume-name-or-id |  | obj-name-or-id | Name or identifier of the volume on which the reclaimable space has to be computed by deleting the specified set of Snapshot copies.
> Output Name | Range | Type | Description
> reclaimable-size |  | integer | Size in bytes of space reclaimable if the specified set of Snapshot copies were deleted. Range : [0..2^44-1].
> snapshot-shared-data |  | integer | Total number of bytes shared between active file system and snapshots after the given snapshots are deleted. Range: [0..2^44-1]

> Errno | Description
> EOBJECTNOTFOUND |  |
> EACCESSDENIED |  |
> EOBJECTAMBIGUOUS |  |
> ESNAPSHOTDOESNOTEXIST |  |
> ESNAPSHOTTOOMANY |  |
> EVOLUMEMOUNTING |  |
> EVOLUMEOFFLINE |  |
> EVOLUMEBUSY |  |

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

> Ends iteration of Snapshot copies.

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

> Errno | Description
> EINVALIDTAG |  |

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

> Retrieve the next records in the iteration started by snapshot-list-info-iter-start.

> Input Name | Range | Type | Description
> maximum |  | integer | The maximum number of records to retrieve. Range: [1..2^31-1]
> tag |  | string | Tag from a previous snapshot-list-info-iter-start.
> Output Name | Range | Type | Description
> records |  | integer | The number of records actually returned. Value of 0 records indicates end of records. Range: [1..2^31-1]
> snapshots |  | snapshot-info[] |

> Errno | Description
> EINVALIDTAG |  |

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

> Returns information on a list of Snapshot copies.

> Input Name | Range | Type | Description
> object-name-or-id |  | obj-name-or-id optional | Name or identifier of the object whose Snapshot copies are to be listed. Valid types of objects are: volume - Lists Snapshot copies of this volume aggregate - Lists Snapshot copies of all volumes in the aggregate filer - Lists all Snapshot copies of all volumes on this filer. vFiler - Lists all Snapshot copies for volumes exclusively belonging to this vFiler. data set - Lists all Snapshot copies of all volumes that are members of all nodes of the data set. storage set - Lists all Snapshot copies of all volumes that are members of the storage set. resource group - Lists all Snapshot copies of all volumes that are direct or indirect members of the resource group. If this input is not specified, then the ZAPI lists all Snapshot copies known to DataFabric Manager server.
> Output Name | Range | Type | Description
> records |  | integer | Number of items that have been saved for future retrieval with snapshot-list-info-iter-next. Range: [1..2^31-1]
> tag |  | string | Tag to be used in subsequent calls to snapshot-list-info-iter-next.

> Errno | Description
> EDATABASEERROR |  |
> EACCESSDENIED |  |
> EINVALIDINPUT |  |
> EOBJECTNOTFOUND |  |
> EOBJECTAMBIGUOUS |  |

Element definition: obj-name-or-id | [top]

> Name or internal ID of a DFM object. This typedef is an alias for the builtin ZAPI type string. An obj-name-or-id must contain between 1 and 64 characters, and must conform to one of the following formats: It must have the format of an obj-name, or It must be the decimal numeric string form of a positive integer whose value is in the range [1..2^31 - 1]. Elements of type obj-name-or-id are used only as inputs to ZAPIs. The value must match either the name or internal ID of an existing DFM object. The ZAPI must specify the object's DFM object type (e.g. data set, host, DP policy, etc.). Some ZAPIs allow the object to be one of several different types. If the format of an obj-name-or-id input element does not conform, or the value does not match the name or ID of an existing object, then generally the ZAPI documents that it fails with error code EOBJECTNOTFOUND. A ZAPI may return more specific error codes. In such cases, the ZAPI specification must document its behavior. If a ZAPI can accept a null value (e.g. reference to no object at all) for such an element, then the element is declared optional, and the absence of the input element represents a null value.

> [none]

Element definition: snapshot | [top]

> Information of one Snapshot copy. Either unique-id or name of the Snapshot copy should be specified.

> Name | Range | Type | Description
> snapshot-name |  | string optional | Name of the Snapshot copy. If unique-id is specified, then this element is ignored.
> unique-id |  | string optional | Unique identifier of the Snapshot copy. Currently, this is the Snapshot copy's creation time.

Element definition: snapshot-info | [top]

> Information on one particular Snapshot copy.

> Name | Range | Type | Description
> creation-timestamp |  | dp-timestamp | The volume access time when the Snapshot copy was created in seconds since January 1, 1970. This value will not change even if the Snapshot copy is accessed.
> cumulative-percentage-of-total-blocks |  | integer | Percentage of blocks owned by this Snapshot copy and all of the more recent Snapshots copies, relative to the total number of blocks in the volume. Range: [0..100]
> dependencies |  | snapshot-dependency[] optional | Application(s) dependent on this Snapshot copy.
> is-busy |  | boolean | True if the Snapshot copy is being used by an application. If "is-busy" is true, then the Snapshot copy cannot be deleted.
> is-part-of-backup-version |  | boolean | True if the Snapshot copy is part of a backup version of a data set.
> percentage-of-total-blocks |  | integer | Percentage of blocks owned by this Snapshot copy, relative to the total number of blocks in the volume. Range: [0..100]
> snapshot-id |  | integer | Database identifier of this Snapshot copy. Range: [1..2^31-1]
> snapshot-name |  | string | Name of the Snapshot copy.
> unique-id |  | string | Unique identifier of the Snapshot copy. Currently, this is the Snapshot copy's creation time.
> volume-id |  | obj-id | Idenitifier of the volume to which this Snapshot copy belongs to.
> volume-name |  | obj-full-name | Name of the volume to which this Snapshot copy belongs to.

Element definition: dp-timestamp | [top]

> Seconds since 1/1/1970 in UTC. Range: [0..2^31-1]. This runs out in 2036, so update the API some time before then.

> [none]

Element definition: obj-full-name | [top]

> Full name of a DFM object. This typedef is an alias for the builtin ZAPI type string. An object full name conforms to all the rules of an obj-name, except that the full name may be up to 255 characters long. DFM creates full names by concatenating an object name with any parent object names, so as to create a unique name for an object. The format of full names is as follows: Host full names are the either the fully-qualified domain name or the IP address in dotted-decimal format of the host. Aggregate full names are the host name and the aggregate name, separated by a colon, e.g. hostname:aggr0. Volume full names are the host name and the volume name, separated by ":/", e.g. hostname:/volume. Note this does not include "/vol". Volume and aggregate full names are distinguished by the presence of a forward slash after the colon. Qtree full names are the containing volume full name and the qtree name, separated by a slash, e.g. hostname:/volume/qtree. The data not contained by any qtree may be represented by "-", e.g. hostname:/volume/-. Lun Path full names are either a volume or qtree full name and the LUN path, separated by a slash, e.g. hostname:/volume/LUN or hostname:/volume/qtree/LUN. Network full names are a network address block in CIDR format, e.g. 1.2.3.0/8. OSSV Directory full names are the OSSV host name and the OSSV path, separated by a colon, e.g. host-lnx:/usr/local or host-w2k:c:/temp Include any others here... Initiator Group full names are host name and the initiator group name, separated by a colon, e.g. hostname:igroup. For any DFM object not listed above, the obj-name and obj-full-name are identical.

> [none]

Element definition: obj-id | [top]

> Identification number (ID) for a DFM object. This typedef is an alias for the builtin ZAPI type integer. Object IDs are unsigned integers in the range [1..2^31 - 1]. In some contexts, an object ID is also allowed to be 0, which is interpreted as a null value, e.g., a reference to no object at all. The ID for a DFM object is always assigned by the system; the user is never allowed to assign an ID to an object. Therefore, an input element of type obj-id is always used to refer to an existing object by its ID. The ZAPI must specify the object's DFM object type (e.g. data set, host, DP policy, etc.). Some ZAPIs allow the object to be one of several different types. If the value of an obj-id input element does not match the ID of any existing DFM object of the specified type or types, then typically the ZAPI fails with error code EOBJECTNOTFOUND. A ZAPI may deviate from this general rule, for example, it may return a more specific error code. In either case, the ZAPI specification must document its behavior.

> [none]

Element definition: snapshot-dependency | [top]

> Application dependent on this Snapshot copy. Possible values: "snapmirror", "snapvault", "dump", "volume_clone", "lun_clone", "snaplock".

> [none]