APIs in Category: ApplicationPolicy
API version 5.0

 
ApplicationPolicyCopy
ApplicationPolicyCreate
ApplicationPolicyDestroy
ApplicationPolicyEditBegin
ApplicationPolicyEditCommit
ApplicationPolicyEditRollback
ApplicationPolicyListIterEnd
ApplicationPolicyListIterNext
ApplicationPolicyListIterStart
ApplicationPolicyModify
Application Policy is a set of Attributes that describe application Policy Interfaces for a Dataset.

NetApp Manage ONTAP API version 5.0
 
ApplicationPolicyCopy (supported) [top]

Create a new application Policy by making a copy of an existing Policy. The new Policy created using this ZAPI has the same set of Properties as the existing Policy.
Error conditions:
  • EACCESSDENIED - User does not have privileges To read the existing Policy From the database, or create a new Policy, or both.
  • EOBJECTNOTFOUND - No existing Policy was found that has the given Name or ID.
  • EOBJECTAMBIGUOUS - Multiple Objects with the given Name present in database.
  • EPOLICYEXISTS - A Policy with the given ApplicationPolicyName already exists.
  • EDATABASEERROR - A database Error occurred while processing the Request.
  • EINVALIDINPUTERROR - Invalid input was provided.
Input Name Type
ApplicationPolicyCopy ApplicationPolicyCopy
 
Output Name Type
ApplicationPolicyCopyResult ApplicationPolicyCopyResult
 Error Name  Description
 EACCESSDENIED
 EDATABASEERROR
 EINVALIDINPUTERROR
 EOBJECTAMBIGUOUS
 EOBJECTNOTFOUND
 EPOLICYEXISTS

 
ApplicationPolicyCreate (supported) [top]
This API creates a new application Policy. Error conditions:
  • EACCESSDENIED - User does not have privileges To create policies.
  • EDATABASEERROR - A database Error occurred while processing the Request.
  • EINVALIDINPUTERROR - Invalid input was provided.
  • EPOLICYEXISTS - An application Policy with given Name already exists.
Input Name Type
ApplicationPolicyCreate ApplicationPolicyCreate
 
Output Name Type
ApplicationPolicyCreateResult ApplicationPolicyCreateResult
 Error Name  Description
 EACCESSDENIED
 EDATABASEERROR
 EINVALIDINPUTERROR
 EPOLICYEXISTS

 
ApplicationPolicyDestroy (supported) [top]
Destroy a application Policy. This removes it From the database.

If the Policy has been applied To any Dataset nodes, then the Destroy Operation fails; it must first be disassociated From all the Dataset nodes To which it has been associated and then destroyed. Error conditions:

  • EACCESSDENIED - User does not have DFM.Policy.Delete on the Policy being destroyed.
  • EOBJECTNOTFOUND - The specified application Policy does not exist in the database.
  • EAPPPOLICYINUSE - The Policy is assigned To one or more Datasets.
  • EDATABASEERROR - A database Error occurred while processing the Request.
  • EOBJECTAMBIGUOUS - Multiple Objects with the given Name present in database.
  • EEDITSESSIONINPROGRESS - The application Policy being destroyed locked in an edit session.
Input Name Type
ApplicationPolicyDestroy ApplicationPolicyDestroy
 
Output Name Type
ApplicationPolicyDestroyResult ApplicationPolicyDestroyResult
 Error Name  Description
 EACCESSDENIED
 EAPPPOLICYINUSE
 EDATABASEERROR
 EEDITSESSIONINPROGRESS
 EOBJECTAMBIGUOUS
 EOBJECTNOTFOUND

 
ApplicationPolicyEditBegin (supported) [top]
Create an edit session and obtain an edit lock on an application Policy To begin modifying the Policy.

An edit lock must be obtained before invoking ApplicationPolicyModify.

Use ApplicationPolicyEditCommit To end the edit session and commit the changes To the database.

Use ApplicationPolicyEditRollback To end the edit session and discard any changes made To the Policy.

24 hours after an edit session on a Policy begins, any subsequent call To ApplicationPolicyEditBegin for that same Policy automatically rolls back the existing edit session and begins a new edit session, just as if the call had used the Force Option. If there is no such call, the existing edit session simply continues and retains the edit lock.


Error conditions:
  • EEDITINPROGRESS - Another edit session already has an edit lock on the specified application Policy.
  • EOBJECTNOTFOUND - No application Policy was found that has the given Name or ID.
  • EACCESSDENIED - User does not have DFM.Policy.Write Privilege on the Policy. modify the application Policy.
  • EDATABASEERROR - A database Error occurred while processing the Request.
Input Name Type
ApplicationPolicyEditBegin ApplicationPolicyEditBegin
 
Output Name Type
ApplicationPolicyEditBeginResult ApplicationPolicyEditBeginResult
 Error Name  Description
 EACCESSDENIED
 EDATABASEERROR
 EEDITINPROGRESS
 EINTERNALERROR
 EOBJECTNOTFOUND

 
ApplicationPolicyEditCommit (supported) [top]
Commit changes made To an application Policy during an edit session into the database.

If all the changes To the Policy are performed successfully, the entire edit is committed and the edit lock on the Policy is released.

If any of the changes To the Policy are not performed successfully, then the edit is rolled back (none of the changes are committed) and the edit lock on the Policy is released.

Use the DryRun Option To test the commit. Using this Option, the changes To the Policy are not committed To the database.


Error conditions:
  • EEDITSESSIONNOTFOUND - No edit lock was found that has the given ID.
  • EACCESSDENIED - User does not have DFM.Policy.Write on the Policy.
  • EPOLICYEXISTS - The Policy's Name is being changed, and a Policy with the new Name already exists.
  • EDATABASEERROR - A database Error occurred while processing the Request.
  • EAPPPOLICYNOTFOUND - An application Policy was not found.
Input Name Type
ApplicationPolicyEditCommit ApplicationPolicyEditCommit
 
Output Name Type
ApplicationPolicyEditCommitResult ApplicationPolicyEditCommitResult
 Error Name  Description
 EACCESSDENIED
 EAPPPOLICYNOTFOUND
 EDATABASEERROR
 EEDITSESSIONNOTFOUND
 EPOLICYEXISTS

 
ApplicationPolicyEditRollback (supported) [top]
Roll back changes made To an application Policy. The edit lock on the Policy will be released after the rollback.
Error conditions:
  • EEDITSESSIONNOTFOUND - No edit lock was found that has the given ID.
  • EACCESSDENIED - User does not have privileges To modify the Policy.
Input Name Type
ApplicationPolicyEditRollback ApplicationPolicyEditRollback
 
Output Name Type
ApplicationPolicyEditRollbackResult ApplicationPolicyEditRollbackResult
 Error Name  Description
 EACCESSDENIED
 EEDITSESSIONNOTFOUND

 
ApplicationPolicyListIterEnd (supported) [top]
Terminate a list iteration that had been started by a call To ApplicationPolicyListIterStart. This informs the server that it may now release any resources associated with the temporary store for the list iteration.
Error conditions:
  • EINVALIDTAG - The specified Tag does not exist.
Input Name Type
ApplicationPolicyListIterEnd ApplicationPolicyListIterEnd
 
Output Name Type
ApplicationPolicyListIterEndResult ApplicationPolicyListIterEndResult
 Error Name  Description
 EINVALIDTAG

 
ApplicationPolicyListIterNext (supported) [top]
Retrieve the next series of policies that are present in a list iteration created by a call To ApplicationPolicyListIterStart. The server maintains an internal cursor pointing To the last record returned. Subsequent calls To ApplicationPolicyListIterNext return the next Maximum Records after the cursor, or all the remaining Records, whichever is fewer.
Error conditions:
  • EINVALIDTAG - The specified Tag does not exist.
Input Name Type
ApplicationPolicyListIterNext ApplicationPolicyListIterNext
 
Output Name Type
ApplicationPolicyListIterNextResult ApplicationPolicyListIterNextResult
 Error Name  Description
 EINVALIDTAG

 
ApplicationPolicyListIterStart (supported) [top]
Begin a list iteration over application policies.

After calling ApplicationPolicyListIterStart, you continue the iteration by calling ApplicationPolicyListIterNext zero or more times, followed by a call To ApplicationPolicyListIterEnd To terminate the iteration.


Error conditions:
  • EACCESSDENIED - User does not have privileges To read the specified Policy.
  • EOBJECTNOTFOUND - No Policy or Resource Group was found that has the given Name or ID.
  • EDATABASEERROR - A database Error occurred while processing the Request.
Input Name Type
ApplicationPolicyListIterStart ApplicationPolicyListIterStart
 
Output Name Type
ApplicationPolicyListIterStartResult ApplicationPolicyListIterStartResult
 Error Name  Description
 EACCESSDENIED
 EDATABASEERROR
 EINVALIDINPUTERROR
 EOBJECTNOTFOUND

 
ApplicationPolicyModify (supported) [top]
This ZAPI modifies the application Policy settings of an existing Policy in the database with the new Values specified in the input. Note: Type of application Policy cannot be modified after creation. Before modifying the Policy, an edit lock has To be obtained on the Policy object.
Error conditions:
  • EEDITSESSIONNOTFOUND - No edit lock was found that has the given ID.
  • EEDITSESSIONCONFLICTINGOP - current modification made conflicts with previous change in the edit session.
  • EACCESSDENIED - User does not have privileges To modify the Policy.
  • EOBJECTNOTFOUND - The Policy was already destroyed during this edit session.
  • EOBJECTAMBIGUOUS - Multiple Objects with the given Name present in database.
  • EINVALIDINPUT - The requested modification is not applicable To the Policy being modified.
  • EDATABASEERROR - A database Error occurred while processing the Request.
Input Name Type
ApplicationPolicyModify ApplicationPolicyModify
 
Output Name Type
ApplicationPolicyModifyResult ApplicationPolicyModifyResult
 Error Name  Description
 EACCESSDENIED
 EDATABASEERROR
 EEDITSESSIONCONFLICTINGOP
 EEDITSESSIONINPROGRESS
 EEDITSESSIONNOTFOUND
 EINVALIDINPUT
 EOBJECTAMBIGUOUS
 EOBJECTNOTFOUND

 
Element definition: ApplicationPolicyCopy [top]
Create a new application Policy by making a copy of an existing Policy. The new Policy created using this ZAPI has the same set of Properties as the existing Policy.
Error conditions:
  • EACCESSDENIED - User does not have privileges To read the existing Policy From the database, or create a new Policy, or both.
  • EOBJECTNOTFOUND - No existing Policy was found that has the given Name or ID.
  • EOBJECTAMBIGUOUS - Multiple Objects with the given Name present in database.
  • EPOLICYEXISTS - A Policy with the given ApplicationPolicyName already exists.
  • EDATABASEERROR - A database Error occurred while processing the Request.
  • EINVALIDINPUTERROR - Invalid input was provided.
Name Type Description
ApplicationPolicyDescription xsd:string
optional
Description of the new Policy. It may contain From 0 To 255 characters. If the Length is greater than 255 characters, the ZAPI fails with Error code EINVALIDINPUTERROR. The default Value is the empty string "".
ApplicationPolicyName ObjName
Name of the new Policy. It must be unique across all application,provisioning and data protection policies.
GroupNameOrId ObjNameOrId
optional
Resource Group To which the newly created application Policy should be added To. User should have DFM.ApplicationPolicy.Write Capability on the specified Group. Default Value: Global Group.
SourcePolicyNameOrId ObjNameOrId
The Name or ID of an existing Policy that is copied To create the new Policy.

 
Element definition: ApplicationPolicyCopyResult [top]
Name Type Description
ApplicationPolicyId ObjId
An object ID for the newly created Policy.

 
Element definition: ApplicationPolicyCreate [top]
This API creates a new application Policy. Error conditions:
  • EACCESSDENIED - User does not have privileges To create policies.
  • EDATABASEERROR - A database Error occurred while processing the Request.
  • EINVALIDINPUTERROR - Invalid input was provided.
  • EPOLICYEXISTS - An application Policy with given Name already exists.
Name Type Description
ApplicationPolicyInfo ApplicationPolicyInfo
Details of the new Policy To be created.

 
Element definition: ApplicationPolicyCreateResult [top]
Name Type Description
ApplicationPolicyId ObjId
Object ID of the newly created Policy.

 
Element definition: ApplicationPolicyDestroy [top]
Destroy a application Policy. This removes it From the database.

If the Policy has been applied To any Dataset nodes, then the Destroy Operation fails; it must first be disassociated From all the Dataset nodes To which it has been associated and then destroyed. Error conditions:

  • EACCESSDENIED - User does not have DFM.Policy.Delete on the Policy being destroyed.
  • EOBJECTNOTFOUND - The specified application Policy does not exist in the database.
  • EAPPPOLICYINUSE - The Policy is assigned To one or more Datasets.
  • EDATABASEERROR - A database Error occurred while processing the Request.
  • EOBJECTAMBIGUOUS - Multiple Objects with the given Name present in database.
  • EEDITSESSIONINPROGRESS - The application Policy being destroyed locked in an edit session.
Name Type Description
ApplicationPolicyNameOrId ObjNameOrId
Name or Id of the application Policy being destroyed.
Force xsd:boolean
optional
Force delete even if there is an edit session in progress on the application Policy.

 
Element definition: ApplicationPolicyDestroyResult [top]
[none]

 
Element definition: ApplicationPolicyEditBegin [top]
Create an edit session and obtain an edit lock on an application Policy To begin modifying the Policy.

An edit lock must be obtained before invoking ApplicationPolicyModify.

Use ApplicationPolicyEditCommit To end the edit session and commit the changes To the database.

Use ApplicationPolicyEditRollback To end the edit session and discard any changes made To the Policy.

24 hours after an edit session on a Policy begins, any subsequent call To ApplicationPolicyEditBegin for that same Policy automatically rolls back the existing edit session and begins a new edit session, just as if the call had used the Force Option. If there is no such call, the existing edit session simply continues and retains the edit lock.


Error conditions:
  • EEDITINPROGRESS - Another edit session already has an edit lock on the specified application Policy.
  • EOBJECTNOTFOUND - No application Policy was found that has the given Name or ID.
  • EACCESSDENIED - User does not have DFM.Policy.Write Privilege on the Policy. modify the application Policy.
  • EDATABASEERROR - A database Error occurred while processing the Request.
Name Type Description
ApplicationPolicyNameOrId ObjNameOrId
Name or ID of an application Policy.
Force xsd:boolean
optional
If true, and an edit session is already in progress on the specified Policy, then the previous edit is rolled back and a new edit is begun. If false, and an edit is already in progress, then the call fails with Error code EEDITINPROGRESS. Default Value is false.

 
Element definition: ApplicationPolicyEditBeginResult [top]
Name Type Description
EditLockId xsd:integer
Identifier of the edit lock on the Policy. Range: [0..(2^31)-1]

 
Element definition: ApplicationPolicyEditCommit [top]
Commit changes made To an application Policy during an edit session into the database.

If all the changes To the Policy are performed successfully, the entire edit is committed and the edit lock on the Policy is released.

If any of the changes To the Policy are not performed successfully, then the edit is rolled back (none of the changes are committed) and the edit lock on the Policy is released.

Use the DryRun Option To test the commit. Using this Option, the changes To the Policy are not committed To the database.


Error conditions:
  • EEDITSESSIONNOTFOUND - No edit lock was found that has the given ID.
  • EACCESSDENIED - User does not have DFM.Policy.Write on the Policy.
  • EPOLICYEXISTS - The Policy's Name is being changed, and a Policy with the new Name already exists.
  • EDATABASEERROR - A database Error occurred while processing the Request.
  • EAPPPOLICYNOTFOUND - An application Policy was not found.
Name Type Description
DryRun xsd:boolean
optional
If true, return a list of the actions the system would take after committing the changes To the Policy, but without actually committing the changes. In addition, the edit lock is not released. By default, DryRun is false.
EditLockId xsd:integer
Identifier of the edit lock on the Policy. The Value must be an edit lock ID that was previously returned by ApplicationPolicyEditBegin ZAPI.

 
Element definition: ApplicationPolicyEditCommitResult [top]
Name Type Description
DryRunResults ArrayOfDryRunResult
optional
Results of a dry run. Only returned if DryRun is true.

 
Element definition: ApplicationPolicyEditRollback [top]
Roll back changes made To an application Policy. The edit lock on the Policy will be released after the rollback.
Error conditions:
  • EEDITSESSIONNOTFOUND - No edit lock was found that has the given ID.
  • EACCESSDENIED - User does not have privileges To modify the Policy.
Name Type Description
EditLockId xsd:integer
Identifier of the edit lock on the Policy. The Value must be an edit lock ID that was previously returned by ApplicationPolicyEditBegin ZAPI.

 
Element definition: ApplicationPolicyEditRollbackResult [top]
[none]

 
Element definition: ApplicationPolicyListIterEnd [top]
Terminate a list iteration that had been started by a call To ApplicationPolicyListIterStart. This informs the server that it may now release any resources associated with the temporary store for the list iteration.
Error conditions:
  • EINVALIDTAG - The specified Tag does not exist.
Name Type Description
Tag xsd:string
The opaque handle returned by the prior call To ApplicationPolicyListIterStart that started this list iteration.

 
Element definition: ApplicationPolicyListIterEndResult [top]
[none]

 
Element definition: ApplicationPolicyListIterNext [top]
Retrieve the next series of policies that are present in a list iteration created by a call To ApplicationPolicyListIterStart. The server maintains an internal cursor pointing To the last record returned. Subsequent calls To ApplicationPolicyListIterNext return the next Maximum Records after the cursor, or all the remaining Records, whichever is fewer.
Error conditions:
  • EINVALIDTAG - The specified Tag does not exist.
Name Type Description
Maximum xsd:integer
The Maximum number of policies To return. Range: [1..2^31-1].
Tag xsd:string
The opaque handle returned by the prior call To ApplicationPolicyListIterStart that started this list iteration.

 
Element definition: ApplicationPolicyListIterNextResult [top]
Name Type Description
ApplicationPolicies ArrayOfApplicationPolicyInfo
List of information about multiple application policies.
Records xsd:integer
Number of Records actually returned in the output. Range:[0..2^31-1]

 
Element definition: ApplicationPolicyListIterStart [top]
Begin a list iteration over application policies.

After calling ApplicationPolicyListIterStart, you continue the iteration by calling ApplicationPolicyListIterNext zero or more times, followed by a call To ApplicationPolicyListIterEnd To terminate the iteration.


Error conditions:
  • EACCESSDENIED - User does not have privileges To read the specified Policy.
  • EOBJECTNOTFOUND - No Policy or Resource Group was found that has the given Name or ID.
  • EDATABASEERROR - A database Error occurred while processing the Request.
Name Type Description
ApplicationPolicyType ApplicationPolicyType
optional
Filter application policies by Type.
ObjectNameOrId ObjNameOrId
optional
Name or identifier of a application Policy or Resource Group. If a Resource Group is specified, only the application policies which are Members of the Group are returned. If application Policy Name or ID is specified, then ApplicationPolicyType filter is ignored.

 
Element definition: ApplicationPolicyListIterStartResult [top]
Name Type Description
Records xsd:integer
Number of items present in the list iteration. Range:[0..2^31-1].
Tag xsd:string
An opaque handle used To identify the list iteration. The list content resides in a temporary store in the server.

 
Element definition: ApplicationPolicyModify [top]
This ZAPI modifies the application Policy settings of an existing Policy in the database with the new Values specified in the input. Note: Type of application Policy cannot be modified after creation. Before modifying the Policy, an edit lock has To be obtained on the Policy object.
Error conditions:
  • EEDITSESSIONNOTFOUND - No edit lock was found that has the given ID.
  • EEDITSESSIONCONFLICTINGOP - current modification made conflicts with previous change in the edit session.
  • EACCESSDENIED - User does not have privileges To modify the Policy.
  • EOBJECTNOTFOUND - The Policy was already destroyed during this edit session.
  • EOBJECTAMBIGUOUS - Multiple Objects with the given Name present in database.
  • EINVALIDINPUT - The requested modification is not applicable To the Policy being modified.
  • EDATABASEERROR - A database Error occurred while processing the Request.
Name Type Description
ApplicationPolicyInfo ApplicationPolicyInfo
New Values for application Policy Attributes. All the Policy Attributes are replaced by the new Values. If an optional element is absent, then it gets replaced by its default Value.
EditLockId xsd:integer
Identifier of the edit lock on the Policy. The Value must be an edit lock ID that was previously returned by ApplicationPolicyEditBegin.

 
Element definition: ApplicationPolicyModifyResult [top]
[none]

 
Element definition: ApplicationPolicyInfo [top]
Contains information about a single application Policy.
Name Type Description
ApplicationBackupOperationInfo ApplicationBackupOperationInfo
Specifies schedules and settings for the backup Operation.
ApplicationPolicyDescription xsd:string
optional
Description of the Policy. It may contain From 0 To 255 characters. If the Length is greater than 255 characters, the ZAPI fails with Error code EINVALIDINPUT. The default Value is the empty string "".
ApplicationPolicyId ObjId
optional
Object ID of the Policy, ignored when creating Policy.
ApplicationPolicyName ObjName
Name of the Policy. Each application Policy has a Name that is unique among provisioning, application and data protection policies. Must be provided while creating a new Policy.
ApplicationPolicySettingsInfo ApplicationPolicySettingsInfo
Policy level settings.
ApplicationPolicyType ApplicationPolicyType
Type of an application Policy.
GroupNameOrId ObjNameOrId
optional
Resource Group To which the newly created application Policy should be added To. User should have DFM.ApplicationPolicy.Write Capability on the specified Group. This input is used by ApplicationPolicyCreate, but ignored by ApplicationPolicyModify. Default Value: Global Group.

 
Element definition: ApplicationPolicyType [top]
Type of an application Policy. Possible Values are: 'hyperv', 'vmware'.
[none]

 
Element definition: ArrayOfApplicationPolicyInfo [top]
Name Type Description
ApplicationPolicyInfo ApplicationPolicyInfo[]

 
Element definition: ArrayOfDryRunResult [top]
Name Type Description
DryRunResult DryRunResult[]

 
Element definition: ObjId [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 ObjId is always used To refer To an existing object by its ID. The ZAPI must specify the object's DFM object Type (e.g. Dataset, Host, DP Policy, etc.). Some ZAPIs allow the object To be one of several different types.

If the Value of an ObjId 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: ObjName [top]
Name of a DFM object. This typedef is an alias for the built in ZAPI Type string. An object Name must conform To the following format:
  • It must contain between 1 and 64 characters.
  • It may start with any character and may contain any combination of characters, except that it may not consist solely of decimal digits ('0' through '9').
  • In some contexts, a Name may be the empty string (""), which is interpreted as a null Value, e.g., a reference To no object at all.
The behavior of a ZAPI when it encounters an Error involving an ObjName input element depends on how the ZAPI uses the input element. Here are the general rules:
  • If the input Name element is used To create a new object with the given Name, or rename an existing object To that Name, and the Name does not conform To the above format, then the ZAPI fails with Error code EINVALIDINPUTERROR. Note that because EINVALIDINPUTERROR is such a common Error code, ZAPI specifications are not required To document cases when they may return it.
  • If the input Name element is used To refer To an existing object with that Name, and there is no object with that Name, then the ZAPI fails with Error code EOBJECTNOTFOUND. Generally the ZAPI specification documents cases when it may return this Error code.
A ZAPI may deviate From these general rules, for example, it may return more specific Error codes. In such cases, the ZAPI specification must document its behavior.

If an input Name element is used To refer To an existing object, then the ZAPI specification must specify which DFM object Type (e.g. data set, Host, DP Policy, etc.) is allowed. Some ZAPIs allow the object To be one of several different types. See the Description of ObjFullName for examples of valid input formats.

Note that there is no requirement that all object names must be unique. However, the names for some specific types of Objects are constrained such that no two Objects of that Type may have the same Name. For example, this constraint applies To Datasets, DP schedules, and DP policies. This means that no two Datasets may have the same Name, but a Dataset may have the same Name as a DP schedule or DP Policy.

In general, object names are compared in a case-insensitive manner. This means that, for example, "MyObject" and "MYOBJECT" are considered To be the same Name for purposes of: creating new Objects, renaming existing Objects, or looking up an object by Name. On the other hand, ZAPIs that return an ObjName generally do not change the capitalization at all. For example, if an object's Name has been set To "MyObject", then list iteration ZAPIs that return the object's Name return it as "MyObject" rather than "MYOBJECT" or "myobject".

ZAPIs that operate on ObjName Values and do not follow these general rules about case sensitivity must document the rules that they do follow.

One important exception To these general rules is that Volumes, Qtrees, OSSV Directories, SRM Paths, Interfaces, FCP Targets and FC switch ports all have case-sensitive names. When looking up Objects of these types by Name, the case must Match the object Name.

[none]

 
Element definition: ObjNameOrId [top]
Name or internal ID of a DFM object. This typedef is an alias for the builtin ZAPI Type string. An ObjNameOrId must contain between 1 and 64 characters, and must conform To one of the following formats:
  • It must have the format of an ObjName, or
  • It must be the decimal numeric string form of a positive integer whose Value is in the range [1..2^31 - 1].
  • In case of application resources From the Host Service, this field can contain unique identifier assigned To the object by the Host Service e.g. for a Virtual Machine, it can be a GUID of the VM. One exception is when such unique identifier is a decimal numeric string containing only digits From 0 through 9. In that case, you cannot use such identifier as ObjNameOrId input.
Elements of Type ObjNameOrId 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. Dataset, Host, DP Policy, etc.). Some ZAPIs allow the object To be one of several different types.

If the format of an ObjNameOrId 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: ApplicationBackupOperationInfo [top]
Specifies schedules and settings for the backup Operation.
Name Type Description
BackupSchedules ArrayOfApplicationBackupScheduleInfo
One or more schedules for the backup Operation.

 
Element definition: ApplicationPolicySettingsInfo [top]
Policy level settings
Name Type Description
BackupScript xsd:string
optional
Name of the script To invoke on the Host Services station both before and after the backup.

The BackupScript consists of 0 To 255 characters. An empty string Value "" indicates no script is invoked. The default Value of this property is the empty string "".

An empty string Value "" indicates no script is invoked. The system does not check whether a non-empty Path string actually refers To an executable script prior attempting To run the script. The default Value of this property is the empty string "". For example, possible Values are %env%\scripts\backup.ps1 OR c:\program..\HS\scripts\backup.ps1 OR k:\program..\HS\scripts\backup.ps1 [k is a network share] OR UNC Path \\SCRIPTSSVR\SHARE\SCRIPTS\BACKUP.PS

DailyRetentionCount xsd:integer
Minimum number of daily Backups To keep. Range: [0..252].
DailyRetentionDuration xsd:integer
The age, in seconds, after which a daily backup expires. Range: [0..2^31 - 1].
HourlyRetentionCount xsd:integer
Minimum number of hourly Backups To keep. Range: [0..252].
HourlyRetentionDuration xsd:integer
The age, in seconds, after which an hourly backup expires. Range: [0..2^31 - 1].
IsLagErrorEnabled xsd:boolean
Indicates whether the system should generate an Error event when the newest local backup copy is older than LagErrorThreshold.
IsLagWarningEnabled xsd:boolean
Indicates whether the system should generate a warning event when the newest local backup copy is older than LagWarningThreshold.
LagErrorThreshold xsd:integer
optional
Lag, in seconds. If local backup copy is older than this amount and if IsLagErrorEnabled is set, the system generates an Error event. Range: [1..2^31 - 1].
LagWarningThreshold xsd:integer
optional
Lag, in seconds. If local backup copy is older than this amount and if IsLagWarningEnabled is set, the system generates a warning event. Range: [1..2^31 - 1].
MonthlyRetentionCount xsd:integer
Minimum number of monthly Backups To keep. Range: [0..252].
MonthlyRetentionDuration xsd:integer
The age, in seconds, after which a monthly backup expires. Range: [0..2^31 - 1].
WeeklyRetentionCount xsd:integer
Minimum number of weekly Backups To keep. Range: [0..252].
WeeklyRetentionDuration xsd:integer
The age, in seconds, after which a weekly backup expires. Range: [0..2^31 - 1].

 
Element definition: DryRunResult [top]
A Description of one Action and the predicted effects of taking that Action.
Name Type Description
DryRunAction xsd:string
An Action the system would take.
DryRunEffect xsd:string
The predicted Effect of the Action.
DryRunReason xsd:string
optional
Present only if Severity is Error or warning. Specifies possible reasons for the Error, warning. If there are no reasons To specify, this element will not be present.
DryRunReasonDetails ArrayOfResultDetail
optional
These details apply To the associated DryRunReason within the same DryRunResult. These offer additional information such as the reasons individual reasources may not have been selected for the DryRunAction in this same DryRunResult.
DryRunSeverity ObjStatus
Severity of the DryRun Result. Possible Values are "information", "Error" or "warning".
DryRunSuggestion xsd:string
Present only if Severity is Error or warning. Specifies any suggestions To rectify the warnings, Errors. If there are no suggestions To specify, this element will not be present.

 
Element definition: ArrayOfApplicationBackupScheduleInfo [top]
Name Type Description
ApplicationBackupScheduleInfo ApplicationBackupScheduleInfo[]

 
Element definition: ArrayOfResultDetail [top]
Name Type Description
ResultDetail ResultDetail[]

 
Element definition: ObjStatus [top]
A Status Value which can be associated with a DFM object. This typedef is an alias for the builtin ZAPI Type string. The Severity associated with an event has this Type.

Possible Values are: 'unknown', 'normal', 'information', 'unmanaged' 'warning', 'Error', 'critical', 'emergency'.

  • unknown: An object has an unknown Status when it transitions From one state To another. Ideally, an object will have this Status briefly. For example, when an object has been added, but not yet discovered.
  • normal: An object has normal Status when it is working within the Thresholds specified in DFM.
  • information: The information Events are normal occurrences on an object for which you can define alarms.
  • unmanaged: An object is considered To be unmanaged when the login and Password are not set for the storage system or agent.
  • warning: An object has the warning Status when an event related To the object occurred that an administrator should know about. The event will not cause Service disruption.
  • Error: An object has Error Status when it does not cause any Service disruption, but it may affect performance.
  • critical: An object has critical Status when it is still performing, but Service disruption may occur if corrective Action is not taken immediately.
  • emergency: An object is in emergency Status when it stops performing unexpectedly and could lose data.
In some contexts, it is important that severities are ordered (as above). For example, an alarm might be triggered if an event with a given Severity "or worse" occurs. In this example, worse means "after" in the list above.
[none]

 
Element definition: ApplicationBackupScheduleInfo [top]
One or more application specific operational Values, schedules and associated backup Retention Type created by the schedule.
Name Type Description
HypervBackupScheduleSettingsInfo HypervBackupScheduleSettingsInfo
optional
Hyper-V specific settings for the backup Operation. These settings apply To this backup schedule only. Must be present if and only if the containing Policy Type is 'hyperv'.
RetentionType DpBackupRetentionType
Retention Type for the backup created by this schedule. Retention Type must Match appropriate schedule Events.

Hourly Retention Type must have the schedule containing StartTime, EndTime, Frequency and all Days for DaysOfWeek. Example schedule: Backup, Sunday through Saturday, every Hour between 7 am and 7 pm.

Daily Retention Type must have the schedule containing StartTime and all Days for DaysOfWeek. Daily schedule will be executed Sunday through Saturday, once a Day at a specified start time. Example schedule: Backup 10 PM every night, Sunday through Saturday.

Weekly Retention Type must have the schedule containing StartTime and DaysOfWeek. Example schedule: Backup every Sunday midnight.

Monthly Retention Type must have the schedule containing StartTime and DaysOfMonth. Example schedule: Backup 10 PM on 1st and 15th Day of each Month.

Unlimited Retention is not supported for scheduled Backups. On Demand backup supports 'unlimited' Option To retain Backups for unlimited Duration.

ScheduleId xsd:integer
optional
Identifier of the schedule. Should not be specified when creating a new Policy. During the modify, ScheduleId must be specified when changing an existing schedule and must be omitted when adding a new schedule.
SimpleScheduleInfo SimpleScheduleInfo
Schedule for creating local Backups.
StartRemoteBackupAfterLocalBackup xsd:boolean
optional
This setting applies To backup schedule only and it is valid for both vmware and hyperv policies. Setting this Option To 'true' requires administrator To have DFM.BackupManager.OnDemandRemoteBackup Privilege on the application Policy. Default Value for this Option would be 'false'. During Policy modification administrator must have DFM.BackupManager.OnDemandRemoteBackup Privilege on the application Policy To change this setting's original Value. For example, if the original Version of the Policy has this Option set To true, changing it To false would require DFM.BackupManager.OnDemandRemoteBackup Privilege. Enabling this Option would initiate on demand transfer on the local backup To a remote storage system.
VmwareBackupScheduleSettingsInfo VmwareBackupScheduleSettingsInfo
optional
VMware specific settings for the backup Operation. These settings apply To this backup schedule only. Must be present if and only if the containing Policy Type is 'vmware'.

 
Element definition: ResultDetail [top]
Details on a specific Action that adds information intended To explain more about a higher level Result. For example, the detail may be used To explain a DryRun Result by explaining why resources were not selected.
Name Type Description
Action xsd:string
An Action or check the system had taken.
Effect xsd:string
The Result of the Action or check.
Reason xsd:string
optional
Specifies possible reasons for the this Result. If there are no reasons To specify, this element will not be present.
Severity ObjStatus
Severity of the Result Result. Possible Values are "information", "Error" "warning". It is normal for "information" To be used To explain why a Resource was not selected.
Suggestion xsd:string
Specifies any suggestions To rectify the information, warnings, Errors. If there are no suggestions To specify, this element will not be present.

 
Element definition: DpBackupRetentionType [top]
Retention Type To which the backup should be archived. Possible Values are: 'hourly', 'daily', 'weekly', 'monthly' and 'unlimited'.
[none]

 
Element definition: HypervBackupScheduleSettingsInfo [top]
Schedule level settings for the Hyper-V backup Operation.
Name Type Description
AllowSavedStateBackup xsd:boolean
If true, the backup is always taken even if the backup Operation will cause Virtual Machine To go offline. If false, the backup is taken only if it is possible To do so with the Virtual Machine being online, otherwise the backup is not taken and the Operation is marked as failed.

 
Element definition: SimpleScheduleInfo [top]
Simple schedule.
Name Type Description
DaysOfMonth ArrayOfDayOfMonth
optional
Days of a Month on which the scheduled event occurs. Must not be present if DaysOfWeek is present.
DaysOfWeek ArrayOfDayOfWeek
optional
Days of a week on which the scheduled event occurs. Must not be present if DaysOfMonth is present.
TimesOfDayInfo TimesOfDayInfo
Times of a Day on which the scheduled event occurs. If none of the other elements are specified, scheduled event occurs on every Day at the specified times.

 
Element definition: VmwareBackupScheduleSettingsInfo [top]
Schedule level settings for the VMware backup Operation.
Name Type Description
CreateVmwareSnapshot xsd:boolean
If true VMware Snapshot will be taken To create a VM consistent backup. If false, only a crash-consistent backup will be created.
IncludeIndependentDisks xsd:boolean
If false, independent Disks are not included in the backup. If true, independent Disks are also included in the backup. The term independent disk is vmware specifc, please refer To vmware documentation.

 
Element definition: ArrayOfDayOfMonth [top]
Name Type Description
DayOfMonth DayOfMonth[]

 
Element definition: ArrayOfDayOfWeek [top]
Name Type Description
DayOfWeek DayOfWeek[]

 
Element definition: TimesOfDayInfo [top]
Times of Day on which the scheduled event occurs.
Name Type Description
EndTime WrapperOfTimeOfDayInfo
optional
End time for a series of scheduled Events separated by "Frequency".
Frequency xsd:integer
optional
Number of minutes between scheduled Events. Must be specified when EndTime is present. Should not be specified if EndTime is not present. Should be a factor of 60 minutes [5,6,10,12 ...] or a multiple of 60 minutes [60,120,240, ...]. Range: [5..1440]
StartTime WrapperOfTimeOfDayInfo
Start time of the schedule. If EndTime is not present, this specifies a single occurrence of a scheduled event. Otherwise, this specifies a series of scheduled Events between StartTime and EndTime at a specified "Frequency".

 
Element definition: DayOfMonth [top]
Day of Month. If DayOfMonth is 29, 30, or 31, it will be interpreted as the last Day of the Month for Months with fewer than that many Days. Range: [1..31]
[none]

 
Element definition: DayOfWeek [top]
Day of week. Range: [0..6] (0 = "Sunday")
[none]

 
Element definition: WrapperOfTimeOfDayInfo [top]
Name Type Description
TimeOfDayInfo TimeOfDayInfo

 
Element definition: TimeOfDayInfo [top]
Time of Day.
Name Type Description
Hour xsd:integer
Hour. Range: [0..23]
Minute xsd:integer
Minute. Range: [0..59]