@nutanix-scratch/dataprotection-js-client 4.0.1-beta.1 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (449) hide show
  1. package/LICENSE.txt +202 -49
  2. package/README.md +35 -19
  3. package/dist/Ntnx-Dataprotection-js-client-prod.js +1 -1
  4. package/dist/Ntnx-Dataprotection-js-client.js +377 -223
  5. package/dist/es/ApiClient.d.ts +8 -1
  6. package/dist/es/ApiClient.js +249 -189
  7. package/dist/es/Paginable.d.ts +1 -1
  8. package/dist/es/Paginable.js +10 -10
  9. package/dist/es/apis/protectedresources-endpoints.d.ts +1 -1
  10. package/dist/es/apis/protectedresources-endpoints.js +17 -17
  11. package/dist/es/apis/recoverypoints-endpoints.d.ts +62 -2
  12. package/dist/es/apis/recoverypoints-endpoints.js +298 -37
  13. package/dist/es/index.d.ts +57 -29
  14. package/dist/es/index.js +181 -69
  15. package/dist/es/models/common/v1/config/Flag.d.ts +32 -26
  16. package/dist/es/models/common/v1/config/Flag.js +66 -22
  17. package/dist/es/models/common/v1/config/IPAddress.d.ts +77 -0
  18. package/dist/{lib/models/dataprotection/v4/config/Subnet.js → es/models/common/v1/config/IPAddress.js} +128 -45
  19. package/dist/es/models/common/v1/config/IPv4Address.d.ts +40 -26
  20. package/dist/es/models/common/v1/config/IPv4Address.js +65 -24
  21. package/dist/es/models/common/v1/config/IPv6Address.d.ts +76 -0
  22. package/dist/es/models/common/v1/config/IPv6Address.js +329 -0
  23. package/dist/es/models/common/v1/config/KVPair.d.ts +35 -26
  24. package/dist/es/models/common/v1/config/KVPair.js +71 -25
  25. package/dist/es/models/common/v1/config/MapOfStringWrapper.d.ts +58 -0
  26. package/dist/{lib/models/dataprotection/v4/config/VpcReference.js → es/models/common/v1/config/MapOfStringWrapper.js} +94 -105
  27. package/dist/es/models/common/v1/config/Message.d.ts +41 -38
  28. package/dist/es/models/common/v1/config/Message.js +58 -26
  29. package/dist/es/models/common/v1/config/MessageSeverity.js +8 -8
  30. package/dist/es/models/common/v1/config/TenantAwareModel.d.ts +22 -20
  31. package/dist/es/models/common/v1/config/TenantAwareModel.js +52 -20
  32. package/dist/es/models/common/v1/response/ApiLink.d.ts +28 -26
  33. package/dist/es/models/common/v1/response/ApiLink.js +54 -22
  34. package/dist/es/models/common/v1/response/ApiResponseMetadata.d.ts +79 -44
  35. package/dist/es/models/common/v1/response/ApiResponseMetadata.js +72 -28
  36. package/dist/es/models/common/v1/response/ExternalizableAbstractModel.d.ts +24 -18
  37. package/dist/es/models/common/v1/response/ExternalizableAbstractModel.js +72 -32
  38. package/dist/es/models/dataprotection/v4/common/BackupType.d.ts +19 -0
  39. package/dist/es/models/dataprotection/v4/common/BackupType.js +85 -0
  40. package/dist/es/models/dataprotection/v4/common/BaseRecoveryPoint.d.ts +49 -42
  41. package/dist/es/models/dataprotection/v4/common/BaseRecoveryPoint.js +91 -42
  42. package/dist/es/models/dataprotection/v4/common/BaseVmRecoveryPoint.d.ts +97 -0
  43. package/dist/es/models/dataprotection/v4/common/BaseVmRecoveryPoint.js +513 -0
  44. package/dist/es/models/dataprotection/v4/common/ClusterInfo.d.ts +81 -0
  45. package/dist/{lib/models/dataprotection/v4/config/RedirectionResponse.js → es/models/dataprotection/v4/common/ClusterInfo.js} +113 -80
  46. package/dist/es/models/dataprotection/v4/common/DiskRecoveryPoint.d.ts +64 -0
  47. package/dist/es/models/dataprotection/v4/{config → common}/DiskRecoveryPoint.js +63 -35
  48. package/dist/es/models/dataprotection/v4/common/RecoveryPointStatus.js +10 -22
  49. package/dist/es/models/dataprotection/v4/common/RecoveryPointType.js +8 -8
  50. package/dist/es/models/dataprotection/v4/common/VssProperties.d.ts +97 -0
  51. package/dist/es/models/dataprotection/v4/common/VssProperties.js +407 -0
  52. package/dist/es/models/dataprotection/v4/config/AhvVmOverrideSpec.d.ts +22 -20
  53. package/dist/es/models/dataprotection/v4/config/AhvVmOverrideSpec.js +53 -23
  54. package/dist/es/models/dataprotection/v4/config/AmazonS3Bucket.d.ts +28 -26
  55. package/dist/es/models/dataprotection/v4/config/AmazonS3Bucket.js +60 -22
  56. package/dist/es/models/dataprotection/v4/config/AzureBlobStorageContainer.d.ts +28 -26
  57. package/dist/es/models/dataprotection/v4/config/AzureBlobStorageContainer.js +60 -22
  58. package/dist/es/models/dataprotection/v4/config/ClusterInfoApiResponse.d.ts +99 -0
  59. package/dist/es/models/dataprotection/v4/config/ClusterInfoApiResponse.js +343 -0
  60. package/dist/es/models/dataprotection/v4/config/ConsistencyGroup.d.ts +62 -51
  61. package/dist/es/models/dataprotection/v4/config/ConsistencyGroup.js +100 -53
  62. package/dist/es/models/dataprotection/v4/config/ConsistencyGroupMember.d.ts +36 -30
  63. package/dist/es/models/dataprotection/v4/config/ConsistencyGroupMember.js +65 -28
  64. package/dist/es/models/dataprotection/v4/config/ConsistencyGroupMemberType.js +10 -10
  65. package/dist/es/models/dataprotection/v4/config/ConsistencyGroupMigrationSpec.d.ts +32 -30
  66. package/dist/es/models/dataprotection/v4/config/ConsistencyGroupMigrationSpec.js +61 -29
  67. package/dist/es/models/dataprotection/v4/config/ConsistencyGroupProjection.d.ts +4 -3
  68. package/dist/es/models/dataprotection/v4/config/ConsistencyGroupProjection.js +44 -21
  69. package/dist/es/models/dataprotection/v4/config/CreateConsistencyGroupApiResponse.d.ts +65 -25
  70. package/dist/es/models/dataprotection/v4/config/CreateConsistencyGroupApiResponse.js +60 -28
  71. package/dist/es/models/dataprotection/v4/config/CreateRecoveryPointApiResponse.d.ts +65 -25
  72. package/dist/es/models/dataprotection/v4/config/CreateRecoveryPointApiResponse.js +60 -28
  73. package/dist/es/models/dataprotection/v4/config/DataProtectionSiteReference.d.ts +38 -26
  74. package/dist/es/models/dataprotection/v4/config/DataProtectionSiteReference.js +62 -24
  75. package/dist/es/models/dataprotection/v4/config/DeleteConsistencyGroupApiResponse.d.ts +64 -25
  76. package/dist/es/models/dataprotection/v4/config/DeleteConsistencyGroupApiResponse.js +60 -28
  77. package/dist/es/models/dataprotection/v4/config/DeleteRecoveryPointApiResponse.d.ts +65 -25
  78. package/dist/es/models/dataprotection/v4/config/DeleteRecoveryPointApiResponse.js +60 -28
  79. package/dist/es/models/dataprotection/v4/config/EsxiVmOverrideSpec.d.ts +22 -20
  80. package/dist/es/models/dataprotection/v4/config/EsxiVmOverrideSpec.js +53 -23
  81. package/dist/es/models/dataprotection/v4/config/ExpirationTimeSpec.d.ts +20 -18
  82. package/dist/es/models/dataprotection/v4/config/ExpirationTimeSpec.js +55 -22
  83. package/dist/es/models/dataprotection/v4/config/GetProtectedResourceApiResponse.d.ts +65 -25
  84. package/dist/es/models/dataprotection/v4/config/GetProtectedResourceApiResponse.js +60 -28
  85. package/dist/es/models/dataprotection/v4/config/GetRecoveryPointApiResponse.d.ts +65 -25
  86. package/dist/es/models/dataprotection/v4/config/GetRecoveryPointApiResponse.js +60 -28
  87. package/dist/es/models/dataprotection/v4/config/GetVmRecoveryPointApiResponse.d.ts +101 -0
  88. package/dist/es/models/dataprotection/v4/config/GetVmRecoveryPointApiResponse.js +343 -0
  89. package/dist/es/models/dataprotection/v4/config/HostReference.d.ts +26 -20
  90. package/dist/es/models/dataprotection/v4/config/HostReference.js +79 -31
  91. package/dist/es/models/dataprotection/v4/config/HostType.js +9 -9
  92. package/dist/es/models/dataprotection/v4/config/IpAddress.d.ts +23 -21
  93. package/dist/es/models/dataprotection/v4/config/IpAddress.js +54 -22
  94. package/dist/es/models/dataprotection/v4/config/ListRecoveryPointsApiResponse.d.ts +66 -25
  95. package/dist/es/models/dataprotection/v4/config/ListRecoveryPointsApiResponse.js +60 -28
  96. package/dist/es/models/dataprotection/v4/config/LocationReference.d.ts +22 -20
  97. package/dist/es/models/dataprotection/v4/config/LocationReference.js +52 -20
  98. package/dist/es/models/dataprotection/v4/config/MigrateConsistencyGroupApiResponse.d.ts +65 -25
  99. package/dist/es/models/dataprotection/v4/config/MigrateConsistencyGroupApiResponse.js +60 -28
  100. package/dist/es/models/dataprotection/v4/config/NutanixObjectsBucket.d.ts +22 -20
  101. package/dist/es/models/dataprotection/v4/config/NutanixObjectsBucket.js +52 -20
  102. package/dist/es/models/dataprotection/v4/config/ObjectStorageType.js +8 -8
  103. package/dist/es/models/dataprotection/v4/config/ProtectedEntityType.js +8 -8
  104. package/dist/es/models/dataprotection/v4/config/ProtectedResource.d.ts +112 -44
  105. package/dist/es/models/dataprotection/v4/config/ProtectedResource.js +126 -38
  106. package/dist/es/models/dataprotection/v4/config/ProtectedResourcePromoteApiResponse.d.ts +65 -25
  107. package/dist/es/models/dataprotection/v4/config/ProtectedResourcePromoteApiResponse.js +60 -28
  108. package/dist/es/models/dataprotection/v4/config/ProtectedResourceReplicationStatus.js +8 -8
  109. package/dist/es/models/dataprotection/v4/config/ProtectedResourceRestoreApiResponse.d.ts +65 -25
  110. package/dist/es/models/dataprotection/v4/config/ProtectedResourceRestoreApiResponse.js +60 -28
  111. package/dist/es/models/dataprotection/v4/config/ProtectedResourceRestoreSpec.d.ts +28 -38
  112. package/dist/es/models/dataprotection/v4/config/ProtectedResourceRestoreSpec.js +61 -91
  113. package/dist/es/models/dataprotection/v4/config/RecoveryInfo.d.ts +29 -20
  114. package/dist/es/models/dataprotection/v4/config/RecoveryInfo.js +55 -20
  115. package/dist/es/models/dataprotection/v4/config/RecoveryPoint.d.ts +103 -36
  116. package/dist/es/models/dataprotection/v4/config/RecoveryPoint.js +120 -37
  117. package/dist/es/models/dataprotection/v4/config/RecoveryPointProjection.d.ts +2 -1
  118. package/dist/es/models/dataprotection/v4/config/RecoveryPointProjection.js +41 -17
  119. package/dist/es/models/dataprotection/v4/config/RecoveryPointReplicateApiResponse.d.ts +65 -25
  120. package/dist/es/models/dataprotection/v4/config/RecoveryPointReplicateApiResponse.js +60 -28
  121. package/dist/es/models/dataprotection/v4/config/RecoveryPointReplicationSpec.d.ts +28 -26
  122. package/dist/es/models/dataprotection/v4/config/RecoveryPointReplicationSpec.js +54 -22
  123. package/dist/es/models/dataprotection/v4/config/RecoveryPointRepository.d.ts +36 -25
  124. package/dist/es/models/dataprotection/v4/config/RecoveryPointRepository.js +84 -33
  125. package/dist/es/models/dataprotection/v4/config/RecoveryPointRepositoryProjection.d.ts +2 -1
  126. package/dist/es/models/dataprotection/v4/config/RecoveryPointRepositoryProjection.js +40 -17
  127. package/dist/es/models/dataprotection/v4/config/RecoveryPointRestorationSpec.d.ts +52 -32
  128. package/dist/es/models/dataprotection/v4/config/RecoveryPointRestorationSpec.js +56 -24
  129. package/dist/es/models/dataprotection/v4/config/RecoveryPointRestoreApiResponse.d.ts +65 -25
  130. package/dist/es/models/dataprotection/v4/config/RecoveryPointRestoreApiResponse.js +60 -28
  131. package/dist/es/models/dataprotection/v4/config/ReplicationState.d.ts +48 -38
  132. package/dist/es/models/dataprotection/v4/config/ReplicationState.js +58 -26
  133. package/dist/es/models/dataprotection/v4/config/RestorableTimeRange.d.ts +26 -24
  134. package/dist/es/models/dataprotection/v4/config/RestorableTimeRange.js +59 -26
  135. package/dist/es/models/dataprotection/v4/config/SiteProtectionInfo.d.ts +58 -26
  136. package/dist/es/models/dataprotection/v4/config/SiteProtectionInfo.js +92 -24
  137. package/dist/es/models/dataprotection/v4/config/SiteReference.d.ts +28 -26
  138. package/dist/es/models/dataprotection/v4/config/SiteReference.js +54 -22
  139. package/dist/es/models/dataprotection/v4/config/SynchronousReplicaPromoteApiResponse.d.ts +65 -25
  140. package/dist/es/models/dataprotection/v4/config/SynchronousReplicaPromoteApiResponse.js +60 -28
  141. package/dist/es/models/dataprotection/v4/config/SynchronousReplicationRole.d.ts +19 -0
  142. package/dist/es/models/dataprotection/v4/config/SynchronousReplicationRole.js +97 -0
  143. package/dist/es/models/dataprotection/v4/config/UpdateConsistencyGroupApiResponse.d.ts +65 -25
  144. package/dist/es/models/dataprotection/v4/config/UpdateConsistencyGroupApiResponse.js +60 -28
  145. package/dist/es/models/dataprotection/v4/config/UpdateRecoveryPointExpirationTimeApiResponse.d.ts +65 -25
  146. package/dist/es/models/dataprotection/v4/config/UpdateRecoveryPointExpirationTimeApiResponse.js +60 -28
  147. package/dist/es/models/dataprotection/v4/config/VmRecoveryPoint.d.ts +4 -71
  148. package/dist/es/models/dataprotection/v4/config/VmRecoveryPoint.js +49 -256
  149. package/dist/es/models/dataprotection/v4/config/VmRecoveryPointRestoreOverride.d.ts +24 -22
  150. package/dist/es/models/dataprotection/v4/config/VmRecoveryPointRestoreOverride.js +55 -23
  151. package/dist/es/models/dataprotection/v4/config/VolumeGroupOverrideSpec.d.ts +22 -20
  152. package/dist/es/models/dataprotection/v4/config/VolumeGroupOverrideSpec.js +53 -23
  153. package/dist/es/models/dataprotection/v4/config/VolumeGroupRecoveryPoint.d.ts +61 -27
  154. package/dist/es/models/dataprotection/v4/config/VolumeGroupRecoveryPoint.js +180 -39
  155. package/dist/es/models/dataprotection/v4/config/VolumeGroupRecoveryPointRestoreOverride.d.ts +34 -26
  156. package/dist/es/models/dataprotection/v4/config/VolumeGroupRecoveryPointRestoreOverride.js +54 -22
  157. package/dist/es/models/dataprotection/v4/config/VolumeGroupSyncContext.d.ts +40 -40
  158. package/dist/es/models/dataprotection/v4/config/VolumeGroupSyncContext.js +104 -73
  159. package/dist/es/models/dataprotection/v4/config/Witness.d.ts +54 -32
  160. package/dist/es/models/dataprotection/v4/config/Witness.js +95 -35
  161. package/dist/es/models/dataprotection/v4/config/WitnessAvailabilityStatus.js +10 -10
  162. package/dist/es/models/dataprotection/v4/content/BaseRecoveryPointSpec.d.ts +64 -0
  163. package/dist/es/models/dataprotection/v4/content/BaseRecoveryPointSpec.js +317 -0
  164. package/dist/es/models/dataprotection/v4/content/ChangedRegion.d.ts +93 -0
  165. package/dist/es/models/dataprotection/v4/{config/Region.js → content/ChangedRegion.js} +81 -49
  166. package/dist/es/models/dataprotection/v4/content/ChangedVmRegionsApiResponse.d.ts +99 -0
  167. package/dist/es/models/dataprotection/v4/content/ChangedVmRegionsApiResponse.js +365 -0
  168. package/dist/es/models/dataprotection/v4/content/ChangedVolumeGroupRegionsApiResponse.d.ts +99 -0
  169. package/dist/es/models/dataprotection/v4/content/ChangedVolumeGroupRegionsApiResponse.js +365 -0
  170. package/dist/es/models/dataprotection/v4/content/ClusterDiscoverOperation.d.ts +19 -0
  171. package/dist/es/models/dataprotection/v4/content/ClusterDiscoverOperation.js +85 -0
  172. package/dist/es/models/dataprotection/v4/content/ClusterDiscoverSpec.d.ts +79 -0
  173. package/dist/es/models/dataprotection/v4/content/ClusterDiscoverSpec.js +341 -0
  174. package/dist/es/models/dataprotection/v4/content/ComputeChangedRegionsClusterDiscoverSpec.d.ts +76 -0
  175. package/dist/es/models/dataprotection/v4/content/ComputeChangedRegionsClusterDiscoverSpec.js +358 -0
  176. package/dist/es/models/dataprotection/v4/content/DiskRecoveryPointReference.d.ts +64 -0
  177. package/dist/es/models/dataprotection/v4/content/DiskRecoveryPointReference.js +318 -0
  178. package/dist/es/models/dataprotection/v4/content/GetVssMetadataApiResponse.d.ts +98 -0
  179. package/dist/es/models/dataprotection/v4/{config/ComputeChangedRegionsResponseModel.js → content/GetVssMetadataApiResponse.js} +89 -58
  180. package/dist/es/models/dataprotection/v4/content/GetVssMetadataClusterDiscoverSpec.d.ts +62 -0
  181. package/dist/{lib/models/dataprotection/v4/config/ClusterReference.js → es/models/dataprotection/v4/content/GetVssMetadataClusterDiscoverSpec.js} +99 -101
  182. package/dist/es/models/dataprotection/v4/{config → content}/RegionType.js +8 -8
  183. package/dist/es/models/dataprotection/v4/content/VmDiskRecoveryPointClusterDiscoverSpec.d.ts +30 -0
  184. package/dist/es/models/dataprotection/v4/content/VmDiskRecoveryPointClusterDiscoverSpec.js +269 -0
  185. package/dist/es/models/dataprotection/v4/content/VmDiskRecoveryPointReference.d.ts +30 -0
  186. package/dist/es/models/dataprotection/v4/content/VmDiskRecoveryPointReference.js +270 -0
  187. package/dist/es/models/dataprotection/v4/content/VmRecoveryPointChangedRegionsComputeSpec.d.ts +57 -0
  188. package/dist/es/models/dataprotection/v4/content/VmRecoveryPointChangedRegionsComputeSpec.js +360 -0
  189. package/dist/es/models/dataprotection/v4/content/VolumeGroupDiskRecoveryPointClusterDiscoverSpec.d.ts +30 -0
  190. package/dist/es/models/dataprotection/v4/content/VolumeGroupDiskRecoveryPointClusterDiscoverSpec.js +269 -0
  191. package/dist/es/models/dataprotection/v4/content/VolumeGroupDiskRecoveryPointReference.d.ts +30 -0
  192. package/dist/es/models/dataprotection/v4/content/VolumeGroupDiskRecoveryPointReference.js +270 -0
  193. package/dist/es/models/dataprotection/v4/content/VolumeGroupRecoveryPointChangedRegionsComputeSpec.d.ts +57 -0
  194. package/dist/es/models/dataprotection/v4/content/VolumeGroupRecoveryPointChangedRegionsComputeSpec.js +360 -0
  195. package/dist/es/models/dataprotection/v4/error/AppMessage.d.ts +57 -48
  196. package/dist/es/models/dataprotection/v4/error/AppMessage.js +62 -30
  197. package/dist/es/models/dataprotection/v4/error/ErrorResponse.d.ts +23 -19
  198. package/dist/es/models/dataprotection/v4/error/ErrorResponse.js +58 -22
  199. package/dist/es/models/dataprotection/v4/error/SchemaValidationError.d.ts +53 -43
  200. package/dist/es/models/dataprotection/v4/error/SchemaValidationError.js +63 -30
  201. package/dist/es/models/dataprotection/v4/error/SchemaValidationErrorMessage.d.ts +34 -32
  202. package/dist/es/models/dataprotection/v4/error/SchemaValidationErrorMessage.js +56 -24
  203. package/dist/es/models/prism/v4/config/TaskReference.d.ts +22 -20
  204. package/dist/es/models/prism/v4/config/TaskReference.js +52 -20
  205. package/dist/es/models/validation/ValidationError.js +6 -6
  206. package/dist/es/utils/ValidationUtils.js +6 -6
  207. package/dist/lib/ApiClient.d.ts +8 -1
  208. package/dist/lib/ApiClient.js +249 -189
  209. package/dist/lib/Paginable.d.ts +1 -1
  210. package/dist/lib/Paginable.js +10 -10
  211. package/dist/lib/apis/protectedresources-endpoints.d.ts +1 -1
  212. package/dist/lib/apis/protectedresources-endpoints.js +17 -17
  213. package/dist/lib/apis/recoverypoints-endpoints.d.ts +62 -2
  214. package/dist/lib/apis/recoverypoints-endpoints.js +298 -37
  215. package/dist/lib/index.d.ts +57 -29
  216. package/dist/lib/index.js +181 -69
  217. package/dist/lib/models/common/v1/config/Flag.d.ts +32 -26
  218. package/dist/lib/models/common/v1/config/Flag.js +66 -22
  219. package/dist/lib/models/common/v1/config/IPAddress.d.ts +77 -0
  220. package/dist/{es/models/dataprotection/v4/config/Subnet.js → lib/models/common/v1/config/IPAddress.js} +128 -45
  221. package/dist/lib/models/common/v1/config/IPv4Address.d.ts +40 -26
  222. package/dist/lib/models/common/v1/config/IPv4Address.js +65 -24
  223. package/dist/lib/models/common/v1/config/IPv6Address.d.ts +76 -0
  224. package/dist/lib/models/common/v1/config/IPv6Address.js +329 -0
  225. package/dist/lib/models/common/v1/config/KVPair.d.ts +35 -26
  226. package/dist/lib/models/common/v1/config/KVPair.js +71 -25
  227. package/dist/lib/models/common/v1/config/MapOfStringWrapper.d.ts +58 -0
  228. package/dist/{es/models/dataprotection/v4/config/VpcReference.js → lib/models/common/v1/config/MapOfStringWrapper.js} +94 -105
  229. package/dist/lib/models/common/v1/config/Message.d.ts +41 -38
  230. package/dist/lib/models/common/v1/config/Message.js +58 -26
  231. package/dist/lib/models/common/v1/config/MessageSeverity.js +8 -8
  232. package/dist/lib/models/common/v1/config/TenantAwareModel.d.ts +22 -20
  233. package/dist/lib/models/common/v1/config/TenantAwareModel.js +52 -20
  234. package/dist/lib/models/common/v1/response/ApiLink.d.ts +28 -26
  235. package/dist/lib/models/common/v1/response/ApiLink.js +54 -22
  236. package/dist/lib/models/common/v1/response/ApiResponseMetadata.d.ts +79 -44
  237. package/dist/lib/models/common/v1/response/ApiResponseMetadata.js +72 -28
  238. package/dist/lib/models/common/v1/response/ExternalizableAbstractModel.d.ts +24 -18
  239. package/dist/lib/models/common/v1/response/ExternalizableAbstractModel.js +72 -32
  240. package/dist/lib/models/dataprotection/v4/common/BackupType.d.ts +19 -0
  241. package/dist/lib/models/dataprotection/v4/common/BackupType.js +85 -0
  242. package/dist/lib/models/dataprotection/v4/common/BaseRecoveryPoint.d.ts +49 -42
  243. package/dist/lib/models/dataprotection/v4/common/BaseRecoveryPoint.js +91 -42
  244. package/dist/lib/models/dataprotection/v4/common/BaseVmRecoveryPoint.d.ts +97 -0
  245. package/dist/lib/models/dataprotection/v4/common/BaseVmRecoveryPoint.js +513 -0
  246. package/dist/lib/models/dataprotection/v4/common/ClusterInfo.d.ts +81 -0
  247. package/dist/{es/models/dataprotection/v4/config/RedirectionResponse.js → lib/models/dataprotection/v4/common/ClusterInfo.js} +113 -80
  248. package/dist/lib/models/dataprotection/v4/common/DiskRecoveryPoint.d.ts +64 -0
  249. package/dist/lib/models/dataprotection/v4/{config → common}/DiskRecoveryPoint.js +63 -35
  250. package/dist/lib/models/dataprotection/v4/common/RecoveryPointStatus.js +10 -22
  251. package/dist/lib/models/dataprotection/v4/common/RecoveryPointType.js +8 -8
  252. package/dist/lib/models/dataprotection/v4/common/VssProperties.d.ts +97 -0
  253. package/dist/lib/models/dataprotection/v4/common/VssProperties.js +407 -0
  254. package/dist/lib/models/dataprotection/v4/config/AhvVmOverrideSpec.d.ts +22 -20
  255. package/dist/lib/models/dataprotection/v4/config/AhvVmOverrideSpec.js +53 -23
  256. package/dist/lib/models/dataprotection/v4/config/AmazonS3Bucket.d.ts +28 -26
  257. package/dist/lib/models/dataprotection/v4/config/AmazonS3Bucket.js +60 -22
  258. package/dist/lib/models/dataprotection/v4/config/AzureBlobStorageContainer.d.ts +28 -26
  259. package/dist/lib/models/dataprotection/v4/config/AzureBlobStorageContainer.js +60 -22
  260. package/dist/lib/models/dataprotection/v4/config/ClusterInfoApiResponse.d.ts +99 -0
  261. package/dist/lib/models/dataprotection/v4/config/ClusterInfoApiResponse.js +343 -0
  262. package/dist/lib/models/dataprotection/v4/config/ConsistencyGroup.d.ts +62 -51
  263. package/dist/lib/models/dataprotection/v4/config/ConsistencyGroup.js +100 -53
  264. package/dist/lib/models/dataprotection/v4/config/ConsistencyGroupMember.d.ts +36 -30
  265. package/dist/lib/models/dataprotection/v4/config/ConsistencyGroupMember.js +65 -28
  266. package/dist/lib/models/dataprotection/v4/config/ConsistencyGroupMemberType.js +10 -10
  267. package/dist/lib/models/dataprotection/v4/config/ConsistencyGroupMigrationSpec.d.ts +32 -30
  268. package/dist/lib/models/dataprotection/v4/config/ConsistencyGroupMigrationSpec.js +61 -29
  269. package/dist/lib/models/dataprotection/v4/config/ConsistencyGroupProjection.d.ts +4 -3
  270. package/dist/lib/models/dataprotection/v4/config/ConsistencyGroupProjection.js +44 -21
  271. package/dist/lib/models/dataprotection/v4/config/CreateConsistencyGroupApiResponse.d.ts +65 -25
  272. package/dist/lib/models/dataprotection/v4/config/CreateConsistencyGroupApiResponse.js +60 -28
  273. package/dist/lib/models/dataprotection/v4/config/CreateRecoveryPointApiResponse.d.ts +65 -25
  274. package/dist/lib/models/dataprotection/v4/config/CreateRecoveryPointApiResponse.js +60 -28
  275. package/dist/lib/models/dataprotection/v4/config/DataProtectionSiteReference.d.ts +38 -26
  276. package/dist/lib/models/dataprotection/v4/config/DataProtectionSiteReference.js +62 -24
  277. package/dist/lib/models/dataprotection/v4/config/DeleteConsistencyGroupApiResponse.d.ts +64 -25
  278. package/dist/lib/models/dataprotection/v4/config/DeleteConsistencyGroupApiResponse.js +60 -28
  279. package/dist/lib/models/dataprotection/v4/config/DeleteRecoveryPointApiResponse.d.ts +65 -25
  280. package/dist/lib/models/dataprotection/v4/config/DeleteRecoveryPointApiResponse.js +60 -28
  281. package/dist/lib/models/dataprotection/v4/config/EsxiVmOverrideSpec.d.ts +22 -20
  282. package/dist/lib/models/dataprotection/v4/config/EsxiVmOverrideSpec.js +53 -23
  283. package/dist/lib/models/dataprotection/v4/config/ExpirationTimeSpec.d.ts +20 -18
  284. package/dist/lib/models/dataprotection/v4/config/ExpirationTimeSpec.js +55 -22
  285. package/dist/lib/models/dataprotection/v4/config/GetProtectedResourceApiResponse.d.ts +65 -25
  286. package/dist/lib/models/dataprotection/v4/config/GetProtectedResourceApiResponse.js +60 -28
  287. package/dist/lib/models/dataprotection/v4/config/GetRecoveryPointApiResponse.d.ts +65 -25
  288. package/dist/lib/models/dataprotection/v4/config/GetRecoveryPointApiResponse.js +60 -28
  289. package/dist/lib/models/dataprotection/v4/config/GetVmRecoveryPointApiResponse.d.ts +101 -0
  290. package/dist/lib/models/dataprotection/v4/config/GetVmRecoveryPointApiResponse.js +343 -0
  291. package/dist/lib/models/dataprotection/v4/config/HostReference.d.ts +26 -20
  292. package/dist/lib/models/dataprotection/v4/config/HostReference.js +79 -31
  293. package/dist/lib/models/dataprotection/v4/config/HostType.js +9 -9
  294. package/dist/lib/models/dataprotection/v4/config/IpAddress.d.ts +23 -21
  295. package/dist/lib/models/dataprotection/v4/config/IpAddress.js +54 -22
  296. package/dist/lib/models/dataprotection/v4/config/ListRecoveryPointsApiResponse.d.ts +66 -25
  297. package/dist/lib/models/dataprotection/v4/config/ListRecoveryPointsApiResponse.js +60 -28
  298. package/dist/lib/models/dataprotection/v4/config/LocationReference.d.ts +22 -20
  299. package/dist/lib/models/dataprotection/v4/config/LocationReference.js +52 -20
  300. package/dist/lib/models/dataprotection/v4/config/MigrateConsistencyGroupApiResponse.d.ts +65 -25
  301. package/dist/lib/models/dataprotection/v4/config/MigrateConsistencyGroupApiResponse.js +60 -28
  302. package/dist/lib/models/dataprotection/v4/config/NutanixObjectsBucket.d.ts +22 -20
  303. package/dist/lib/models/dataprotection/v4/config/NutanixObjectsBucket.js +52 -20
  304. package/dist/lib/models/dataprotection/v4/config/ObjectStorageType.js +8 -8
  305. package/dist/lib/models/dataprotection/v4/config/ProtectedEntityType.js +8 -8
  306. package/dist/lib/models/dataprotection/v4/config/ProtectedResource.d.ts +112 -44
  307. package/dist/lib/models/dataprotection/v4/config/ProtectedResource.js +126 -38
  308. package/dist/lib/models/dataprotection/v4/config/ProtectedResourcePromoteApiResponse.d.ts +65 -25
  309. package/dist/lib/models/dataprotection/v4/config/ProtectedResourcePromoteApiResponse.js +60 -28
  310. package/dist/lib/models/dataprotection/v4/config/ProtectedResourceReplicationStatus.js +8 -8
  311. package/dist/lib/models/dataprotection/v4/config/ProtectedResourceRestoreApiResponse.d.ts +65 -25
  312. package/dist/lib/models/dataprotection/v4/config/ProtectedResourceRestoreApiResponse.js +60 -28
  313. package/dist/lib/models/dataprotection/v4/config/ProtectedResourceRestoreSpec.d.ts +28 -38
  314. package/dist/lib/models/dataprotection/v4/config/ProtectedResourceRestoreSpec.js +61 -91
  315. package/dist/lib/models/dataprotection/v4/config/RecoveryInfo.d.ts +29 -20
  316. package/dist/lib/models/dataprotection/v4/config/RecoveryInfo.js +55 -20
  317. package/dist/lib/models/dataprotection/v4/config/RecoveryPoint.d.ts +103 -36
  318. package/dist/lib/models/dataprotection/v4/config/RecoveryPoint.js +120 -37
  319. package/dist/lib/models/dataprotection/v4/config/RecoveryPointProjection.d.ts +2 -1
  320. package/dist/lib/models/dataprotection/v4/config/RecoveryPointProjection.js +41 -17
  321. package/dist/lib/models/dataprotection/v4/config/RecoveryPointReplicateApiResponse.d.ts +65 -25
  322. package/dist/lib/models/dataprotection/v4/config/RecoveryPointReplicateApiResponse.js +60 -28
  323. package/dist/lib/models/dataprotection/v4/config/RecoveryPointReplicationSpec.d.ts +28 -26
  324. package/dist/lib/models/dataprotection/v4/config/RecoveryPointReplicationSpec.js +54 -22
  325. package/dist/lib/models/dataprotection/v4/config/RecoveryPointRepository.d.ts +36 -25
  326. package/dist/lib/models/dataprotection/v4/config/RecoveryPointRepository.js +84 -33
  327. package/dist/lib/models/dataprotection/v4/config/RecoveryPointRepositoryProjection.d.ts +2 -1
  328. package/dist/lib/models/dataprotection/v4/config/RecoveryPointRepositoryProjection.js +40 -17
  329. package/dist/lib/models/dataprotection/v4/config/RecoveryPointRestorationSpec.d.ts +52 -32
  330. package/dist/lib/models/dataprotection/v4/config/RecoveryPointRestorationSpec.js +56 -24
  331. package/dist/lib/models/dataprotection/v4/config/RecoveryPointRestoreApiResponse.d.ts +65 -25
  332. package/dist/lib/models/dataprotection/v4/config/RecoveryPointRestoreApiResponse.js +60 -28
  333. package/dist/lib/models/dataprotection/v4/config/ReplicationState.d.ts +48 -38
  334. package/dist/lib/models/dataprotection/v4/config/ReplicationState.js +58 -26
  335. package/dist/lib/models/dataprotection/v4/config/RestorableTimeRange.d.ts +26 -24
  336. package/dist/lib/models/dataprotection/v4/config/RestorableTimeRange.js +59 -26
  337. package/dist/lib/models/dataprotection/v4/config/SiteProtectionInfo.d.ts +58 -26
  338. package/dist/lib/models/dataprotection/v4/config/SiteProtectionInfo.js +92 -24
  339. package/dist/lib/models/dataprotection/v4/config/SiteReference.d.ts +28 -26
  340. package/dist/lib/models/dataprotection/v4/config/SiteReference.js +54 -22
  341. package/dist/lib/models/dataprotection/v4/config/SynchronousReplicaPromoteApiResponse.d.ts +65 -25
  342. package/dist/lib/models/dataprotection/v4/config/SynchronousReplicaPromoteApiResponse.js +60 -28
  343. package/dist/lib/models/dataprotection/v4/config/SynchronousReplicationRole.d.ts +19 -0
  344. package/dist/lib/models/dataprotection/v4/config/SynchronousReplicationRole.js +97 -0
  345. package/dist/lib/models/dataprotection/v4/config/UpdateConsistencyGroupApiResponse.d.ts +65 -25
  346. package/dist/lib/models/dataprotection/v4/config/UpdateConsistencyGroupApiResponse.js +60 -28
  347. package/dist/lib/models/dataprotection/v4/config/UpdateRecoveryPointExpirationTimeApiResponse.d.ts +65 -25
  348. package/dist/lib/models/dataprotection/v4/config/UpdateRecoveryPointExpirationTimeApiResponse.js +60 -28
  349. package/dist/lib/models/dataprotection/v4/config/VmRecoveryPoint.d.ts +4 -71
  350. package/dist/lib/models/dataprotection/v4/config/VmRecoveryPoint.js +49 -256
  351. package/dist/lib/models/dataprotection/v4/config/VmRecoveryPointRestoreOverride.d.ts +24 -22
  352. package/dist/lib/models/dataprotection/v4/config/VmRecoveryPointRestoreOverride.js +55 -23
  353. package/dist/lib/models/dataprotection/v4/config/VolumeGroupOverrideSpec.d.ts +22 -20
  354. package/dist/lib/models/dataprotection/v4/config/VolumeGroupOverrideSpec.js +53 -23
  355. package/dist/lib/models/dataprotection/v4/config/VolumeGroupRecoveryPoint.d.ts +61 -27
  356. package/dist/lib/models/dataprotection/v4/config/VolumeGroupRecoveryPoint.js +180 -39
  357. package/dist/lib/models/dataprotection/v4/config/VolumeGroupRecoveryPointRestoreOverride.d.ts +34 -26
  358. package/dist/lib/models/dataprotection/v4/config/VolumeGroupRecoveryPointRestoreOverride.js +54 -22
  359. package/dist/lib/models/dataprotection/v4/config/VolumeGroupSyncContext.d.ts +40 -40
  360. package/dist/lib/models/dataprotection/v4/config/VolumeGroupSyncContext.js +104 -73
  361. package/dist/lib/models/dataprotection/v4/config/Witness.d.ts +54 -32
  362. package/dist/lib/models/dataprotection/v4/config/Witness.js +95 -35
  363. package/dist/lib/models/dataprotection/v4/config/WitnessAvailabilityStatus.js +10 -10
  364. package/dist/lib/models/dataprotection/v4/content/BaseRecoveryPointSpec.d.ts +64 -0
  365. package/dist/lib/models/dataprotection/v4/content/BaseRecoveryPointSpec.js +317 -0
  366. package/dist/lib/models/dataprotection/v4/content/ChangedRegion.d.ts +93 -0
  367. package/dist/lib/models/dataprotection/v4/{config/Region.js → content/ChangedRegion.js} +81 -49
  368. package/dist/lib/models/dataprotection/v4/content/ChangedVmRegionsApiResponse.d.ts +99 -0
  369. package/dist/lib/models/dataprotection/v4/content/ChangedVmRegionsApiResponse.js +365 -0
  370. package/dist/lib/models/dataprotection/v4/content/ChangedVolumeGroupRegionsApiResponse.d.ts +99 -0
  371. package/dist/lib/models/dataprotection/v4/content/ChangedVolumeGroupRegionsApiResponse.js +365 -0
  372. package/dist/lib/models/dataprotection/v4/content/ClusterDiscoverOperation.d.ts +19 -0
  373. package/dist/lib/models/dataprotection/v4/content/ClusterDiscoverOperation.js +85 -0
  374. package/dist/lib/models/dataprotection/v4/content/ClusterDiscoverSpec.d.ts +79 -0
  375. package/dist/lib/models/dataprotection/v4/content/ClusterDiscoverSpec.js +341 -0
  376. package/dist/lib/models/dataprotection/v4/content/ComputeChangedRegionsClusterDiscoverSpec.d.ts +76 -0
  377. package/dist/lib/models/dataprotection/v4/content/ComputeChangedRegionsClusterDiscoverSpec.js +358 -0
  378. package/dist/lib/models/dataprotection/v4/content/DiskRecoveryPointReference.d.ts +64 -0
  379. package/dist/lib/models/dataprotection/v4/content/DiskRecoveryPointReference.js +318 -0
  380. package/dist/lib/models/dataprotection/v4/content/GetVssMetadataApiResponse.d.ts +98 -0
  381. package/dist/lib/models/dataprotection/v4/{config/ComputeChangedRegionsResponseModel.js → content/GetVssMetadataApiResponse.js} +89 -58
  382. package/dist/lib/models/dataprotection/v4/content/GetVssMetadataClusterDiscoverSpec.d.ts +62 -0
  383. package/dist/{es/models/dataprotection/v4/config/ClusterReference.js → lib/models/dataprotection/v4/content/GetVssMetadataClusterDiscoverSpec.js} +99 -101
  384. package/dist/lib/models/dataprotection/v4/{config → content}/RegionType.js +8 -8
  385. package/dist/lib/models/dataprotection/v4/content/VmDiskRecoveryPointClusterDiscoverSpec.d.ts +30 -0
  386. package/dist/lib/models/dataprotection/v4/content/VmDiskRecoveryPointClusterDiscoverSpec.js +269 -0
  387. package/dist/lib/models/dataprotection/v4/content/VmDiskRecoveryPointReference.d.ts +30 -0
  388. package/dist/lib/models/dataprotection/v4/content/VmDiskRecoveryPointReference.js +270 -0
  389. package/dist/lib/models/dataprotection/v4/content/VmRecoveryPointChangedRegionsComputeSpec.d.ts +57 -0
  390. package/dist/lib/models/dataprotection/v4/content/VmRecoveryPointChangedRegionsComputeSpec.js +360 -0
  391. package/dist/lib/models/dataprotection/v4/content/VolumeGroupDiskRecoveryPointClusterDiscoverSpec.d.ts +30 -0
  392. package/dist/lib/models/dataprotection/v4/content/VolumeGroupDiskRecoveryPointClusterDiscoverSpec.js +269 -0
  393. package/dist/lib/models/dataprotection/v4/content/VolumeGroupDiskRecoveryPointReference.d.ts +30 -0
  394. package/dist/lib/models/dataprotection/v4/content/VolumeGroupDiskRecoveryPointReference.js +270 -0
  395. package/dist/lib/models/dataprotection/v4/content/VolumeGroupRecoveryPointChangedRegionsComputeSpec.d.ts +57 -0
  396. package/dist/lib/models/dataprotection/v4/content/VolumeGroupRecoveryPointChangedRegionsComputeSpec.js +360 -0
  397. package/dist/lib/models/dataprotection/v4/error/AppMessage.d.ts +57 -48
  398. package/dist/lib/models/dataprotection/v4/error/AppMessage.js +62 -30
  399. package/dist/lib/models/dataprotection/v4/error/ErrorResponse.d.ts +23 -19
  400. package/dist/lib/models/dataprotection/v4/error/ErrorResponse.js +58 -22
  401. package/dist/lib/models/dataprotection/v4/error/SchemaValidationError.d.ts +53 -43
  402. package/dist/lib/models/dataprotection/v4/error/SchemaValidationError.js +63 -30
  403. package/dist/lib/models/dataprotection/v4/error/SchemaValidationErrorMessage.d.ts +34 -32
  404. package/dist/lib/models/dataprotection/v4/error/SchemaValidationErrorMessage.js +56 -24
  405. package/dist/lib/models/prism/v4/config/TaskReference.d.ts +22 -20
  406. package/dist/lib/models/prism/v4/config/TaskReference.js +52 -20
  407. package/dist/lib/models/validation/ValidationError.js +6 -6
  408. package/dist/lib/utils/ValidationUtils.js +6 -6
  409. package/package.json +3 -3
  410. package/dist/es/models/dataprotection/v4/config/Category.d.ts +0 -76
  411. package/dist/es/models/dataprotection/v4/config/Category.js +0 -290
  412. package/dist/es/models/dataprotection/v4/config/ClusterReference.d.ts +0 -72
  413. package/dist/es/models/dataprotection/v4/config/ComputeChangedRegionsResponse.d.ts +0 -48
  414. package/dist/es/models/dataprotection/v4/config/ComputeChangedRegionsResponse.js +0 -262
  415. package/dist/es/models/dataprotection/v4/config/ComputeChangedRegionsResponseModel.d.ts +0 -59
  416. package/dist/es/models/dataprotection/v4/config/DisasterRecoveryLocation.d.ts +0 -71
  417. package/dist/es/models/dataprotection/v4/config/DisasterRecoveryLocation.js +0 -298
  418. package/dist/es/models/dataprotection/v4/config/DiskRecoveryPoint.d.ts +0 -62
  419. package/dist/es/models/dataprotection/v4/config/RedirectionResponse.d.ts +0 -60
  420. package/dist/es/models/dataprotection/v4/config/Region.d.ts +0 -91
  421. package/dist/es/models/dataprotection/v4/config/RegionResponse.d.ts +0 -60
  422. package/dist/es/models/dataprotection/v4/config/RegionResponse.js +0 -295
  423. package/dist/es/models/dataprotection/v4/config/Subnet.d.ts +0 -48
  424. package/dist/es/models/dataprotection/v4/config/VmRecoveryPointComputeChangedRegionsRequest.d.ts +0 -98
  425. package/dist/es/models/dataprotection/v4/config/VmRecoveryPointComputeChangedRegionsRequest.js +0 -403
  426. package/dist/es/models/dataprotection/v4/config/VolumeGroupRecoveryPointComputeChangedRegionsRequest.d.ts +0 -98
  427. package/dist/es/models/dataprotection/v4/config/VolumeGroupRecoveryPointComputeChangedRegionsRequest.js +0 -403
  428. package/dist/es/models/dataprotection/v4/config/VpcReference.d.ts +0 -72
  429. package/dist/lib/models/dataprotection/v4/config/Category.d.ts +0 -76
  430. package/dist/lib/models/dataprotection/v4/config/Category.js +0 -290
  431. package/dist/lib/models/dataprotection/v4/config/ClusterReference.d.ts +0 -72
  432. package/dist/lib/models/dataprotection/v4/config/ComputeChangedRegionsResponse.d.ts +0 -48
  433. package/dist/lib/models/dataprotection/v4/config/ComputeChangedRegionsResponse.js +0 -262
  434. package/dist/lib/models/dataprotection/v4/config/ComputeChangedRegionsResponseModel.d.ts +0 -59
  435. package/dist/lib/models/dataprotection/v4/config/DisasterRecoveryLocation.d.ts +0 -71
  436. package/dist/lib/models/dataprotection/v4/config/DisasterRecoveryLocation.js +0 -298
  437. package/dist/lib/models/dataprotection/v4/config/DiskRecoveryPoint.d.ts +0 -62
  438. package/dist/lib/models/dataprotection/v4/config/RedirectionResponse.d.ts +0 -60
  439. package/dist/lib/models/dataprotection/v4/config/Region.d.ts +0 -91
  440. package/dist/lib/models/dataprotection/v4/config/RegionResponse.d.ts +0 -60
  441. package/dist/lib/models/dataprotection/v4/config/RegionResponse.js +0 -295
  442. package/dist/lib/models/dataprotection/v4/config/Subnet.d.ts +0 -48
  443. package/dist/lib/models/dataprotection/v4/config/VmRecoveryPointComputeChangedRegionsRequest.d.ts +0 -98
  444. package/dist/lib/models/dataprotection/v4/config/VmRecoveryPointComputeChangedRegionsRequest.js +0 -403
  445. package/dist/lib/models/dataprotection/v4/config/VolumeGroupRecoveryPointComputeChangedRegionsRequest.d.ts +0 -98
  446. package/dist/lib/models/dataprotection/v4/config/VolumeGroupRecoveryPointComputeChangedRegionsRequest.js +0 -403
  447. package/dist/lib/models/dataprotection/v4/config/VpcReference.d.ts +0 -72
  448. /package/dist/es/models/dataprotection/v4/{config → content}/RegionType.d.ts +0 -0
  449. /package/dist/lib/models/dataprotection/v4/{config → content}/RegionType.d.ts +0 -0
package/LICENSE.txt CHANGED
@@ -1,49 +1,202 @@
1
- SDK LICENSE AGREEMENT IMPORTANT -- READ CAREFULLY
2
- READ THIS SDK LICENSE AGREEMENT (THE "AGREEMENT") BEFORE DOWNLOADING, INSTALLING, COPYING, CONFIGURING, ACCESSING, DEPLOYING AND/OR USING THE SDK OR THE DOCUMENTATION (EACH AS DEFINED BELOW). BY DOWNLOADING, INSTALLING, COPYING, CONFIGURING, ACCESSING, DEPLOYING, USING AND/OR OTHERWISE USING ALL OR ANY PART OF THE SDK OR THE DOCUMENTATION, OR BY CLICKING ON AN "ACCEPT" BUTTON, YOU AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT. YOU FURTHER AGREE THAT YOU ARE BOUND BY AND ARE A PARTY TO THIS AGREEMENT, AND, IF YOU ARE ACCEPTING THESE TERMS ON BEHALF OF ANOTHER PERSON OR A COMPANY OR OTHER LEGAL ENTITY, YOU REPRESENT AND WARRANT THAT YOU HAVE FULL AUTHORITY TO BIND THAT PERSON, COMPANY, OR LEGAL ENTITY TO THESE TERMS.
3
-
4
-
5
- YOUR USE OF THE SDK AND DOCUMENTATION IS EXPRESSLY CONDITIONED ON YOUR ACCEPTANCE OF THE TERMS AND CONDITIONS OF THIS AGREEMENT. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT, DO NOT DOWNLOAD, INSTALL, COPY, CONFIGURE, ACCESS, DEPLOY, CLICK ON AN "ACCEPT" BUTTON AND/OR OTHERWISE USE THE SDK OR DOCUMENTATION.
6
-
7
-
8
- This Agreement is between you, on behalf of the company, partnership or business entity that you represent ("Licensee") and Nutanix, Inc. a Delaware corporation, with offices located at 1740 Technology Drive, Suite 150, San Jose, CA 95110, USA ("Nutanix") (each of Licensee and Nutanix a "Party" and together the "Parties"), and is effective as of the date on which Licensee accepts the terms of this Agreement ("Effective Date").
9
- In consideration of the terms and conditions of this Agreement, the Parties agree as follows:
10
- DEFINITIONS
11
- In addition to the capitalized terms set forth above, the following capitalized terms shall have the following definitions:
12
- 1.1 "Documentation" means any manuals, instructions and other documentation pertaining to the SDK that Nutanix may deliver or make available to Licensee.
13
-
14
- 1.2 "Intellectual Property Rights" means patents of any type, design rights, utility models or other similar invention rights, copyrights, derivative works, mask work rights, trade secret or confidentiality rights, trademarks, trade names and service marks and any other intangible property rights, including applications and registrations for any of the foregoing, in any country, arising under statutory or common law or by contract and whether or not perfected, now existing or hereafter filed, issued, or acquired.
15
-
16
- 1.3 “Licensee Software” means a software program developed by Licensee that utilizes or interacts with the SDK or any other Nutanix Products in any way.
17
-
18
- 1.4 "Nutanix Products" means any Nutanix proprietary software, internet-based or hosted offerings, and any updates or upgrades not provided under a software-specific license.
19
-
20
- 1.5 “SDK” means the software development kit provided by Nutanix under this Agreement.
21
-
22
- LICENSE GRANT AND SERVICES
23
- Grant. Subject to this Section 2, and conditioned upon Licensee's compliance with all the terms and conditions of this Agreement, Nutanix grants to Licensee a non-exclusive, non-transferable, non-sublicensable, terminable (in accordance with Section 5 herein) license to use and make incidental copies of the SDK in object code form solely for development purposes in connection with Licensee’s use of Nutanix’s application programming interfaces (“APIs”) for the purpose of enabling interoperability of Licensee Software with Nutanix Products. Subject to this Section 2, Licensee may distribute the SDK in object code form as a component of Licensee Software, so long as distribution is necessary for interoperability of such Licensee Software with Nutanix Products and the Licensee is otherwise in compliance with this Agreement.
24
- Restrictions. Except as specified in this Agreement, Licensee shall not and agrees not to: (i) use the SDK or the Documentation for any use or purpose other than as explicitly permitted in this section, including but not limited to use to provide benchmarking or other services of any kind to third parties or to run any business operations; (ii) lease, loan, resell, sublicense, distribute, or transfer the SDK or the Documentation; (iii) copy or otherwise reproduce the SDK or the Documentation; (iv) modify or create derivative works of the SDK or the Documentation; (v) disassemble, decompile or reverse engineer the SDK, or change or remove any proprietary rights notice on any of the foregoing or the Documentation; or, (vi) use the SDK in a manner that would subject the SDK to any other license terms, including licenses that require the SDK to be (a) disclosed or distributed in source code form, or (b) licensed for the purpose of making derivative works.
25
- Distribution Limitations. If Licensee distributes the SDK, Licensee will: (a) ensure that any third party use of the SDK will be subject only to the terms of this Agreement, (b) not alter this Agreement, and (c) include a copy of this Agreement with Licensee Software in place and in manner where Licensee provides such third party notices in Licensee Software generally.
26
- Use of Open Source Software. Portions of the SDK may constitute open source software (the "Open Source Software") that is distributed subject to one or more applicable open source software license(s) (the "Open Source Software License"). Licensee may use the Open Source Software in accordance with the applicable Open Source Software License and, to the extent any of the provisions of this Agreement are inconsistent with the applicable Open Source Software License, the Open Source Software License shall take precedence.
27
- Services. At Nutanix’s sole election, it may provide assistance to Licensee with respect to the use of the SDK ("Support Services"). Such Support Services shall be provided at no charge solely as a courtesy to Licensee, and as set forth in Section 6.1 below, such Support Services shall be provided without warranty and Nutanix shall have no liability with respect to such Support Services.
28
- Nutanix Products. If you configure the SDK to connect with Nutanix Products, the Nutanix Products shall be governed by the Nutanix License and Services Agreement (“NLSA”) located at https://www.nutanix.com/legal/eula, which may be updated from time to time. The NLSA is incorporated herein by reference. Any use of the SDK that violates the NLSA will also be a violation of this Agreement.
29
- CONFIDENTIALITY AND ACCESS RESTRICTIONS
30
- “Confidential Information” means any information disclosed by Nutanix to Licensee pursuant to this Agreement that is marked “Confidential,” “Proprietary,” or in some similar manner and any information which Licensee knew or reasonably should have known to be confidential. Licensee shall treat as confidential all Confidential Information of Nutanix and shall not use such Confidential Information except to exercise Licensee's rights or perform Licensee's obligations under this Agreement. Licensee will protect Confidential Information from unauthorized use, access, or disclosure in the same manner as Licensee protect their own confidential or proprietary information of a similar nature but with no less than reasonable care. Licensee shall not disclose such Confidential Information to any third party during or after the term of this Agreement. This paragraph will not apply to any Confidential Information that: (a) was rightfully in Licensee's possession prior to receipt of such Confidential Information from Nutanix; (b) is or becomes a matter of public knowledge through no fault of Licensee; (c) is rightfully received from a third party without a duty of confidentiality; (d) is independently developed by Licensee without breach of any confidentiality obligations; (e) is disclosed by Licensee with Nutanix’s prior written approval; or (f) Licensee is required to disclose by applicable law or court order, provided that Licensee notifies Nutanix of such required disclosure promptly in writing and cooperates with Nutanix in any lawful action to contest or limit the scope of such required disclosure. Licensee acknowledge that breach of this Section 3 will cause irreparable damage to Nutanix for which monetary damages will be an inadequate remedy. Accordingly, Nutanix will be entitled to seek and obtain injunctive and any other relief (legal or equitable) to restrain any breach or anticipated breach of this Section 3.
31
- TERM AND TERMINATION
32
- Term. This Agreement and the licenses granted hereunder shall become effective as of the Effective Date and may be terminated by either party at any time upon written notice. In addition, this Agreement automatically terminates if Licensee or any of its employees or consultants fail to comply with the terms and conditions of this Agreement. Upon expiration or termination of this Agreement for any reason: (a) all licenses granted by Nutanix shall immediately terminate; (b) Licensee shall immediately discontinue use of the SDK and the Documentation; (c) Licensee shall destroy all copies of the SDK and the Documentation in Licensee's possession, custody or control; and (d) if requested, Licensee shall certify to Nutanix in writing that such return or destruction has occurred.
33
- Survival. Sections 2.3, 3, 4.2, and 5-9 shall survive any expiration or termination of this Agreement.
34
- OWNERSHIP
35
- As between Nutanix and Licensee, Nutanix and its licensors own all worldwide right, title and interest in the SDK and Documentation including all Intellectual Property Rights. The SDK and Documentation are Nutanix's valuable trade secrets and constitute Nutanix's Confidential Information. Except for the rights explicitly granted to Licensee in this Agreement, all right, title and interest in the SDK and Documentation are reserved and retained by Nutanix, its affiliates, and/or its licensors. Licensee does not acquire any intellectual property or other rights in the SDK or Documentation as a result of downloading, installing, accessing or using the SDK or Documentation except as specified in this Agreement.
36
- WARRANTY DISCLAIMERS AND INDEMNIFICATION
37
- Disclaimers by Nutanix. THE SDK, DOCUMENTATION, AND SUPPORT SERVICES ARE PROVIDED HEREUNDER "AS IS" WITHOUT WARRANTY OF ANY KIND. NUTANIX DISCLAIMS ALL WARRANTIES, EXPRESS AND IMPLIED WITH RESPECT TO THE FOREGOING, INCLUDING BUT NOT LIMITED TO ANY IMPLIED WARRANTIES OF MERCHANTABILITY, MERCHANTABLE QUALITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. NUTANIX SHALL HAVE NO LIABILITY FOR DAMAGES OF ANY KIND ARISING FROM THE SUBJECT MATTER OF THIS AGREEMENT OR RESULTING FROM THE SDK, THE SUPPORT SERVICES, OR THE DOCUMENTATION, OR ANY USE THEREOF.
38
- Licensee Indemnity. Licensee shall defend, indemnify and hold Nutanix and its directors, employees subsidiaries, affiliates, successors and assigns harmless from and against all claims, damages, losses, costs and expenses, including attorneys' fees, arising from any third party claims asserted against Nutanix and its employees, subsidiaries, affiliates, successors and assigns, that are based in whole or in part on any of the following: (a) Licensee's distribution, use, or misuse of the SDK in violation of this Agreement; (b) Licensee’s use of the SDK in combination with any other software not provided hereunder; (c) Licensee’s breach of this Agreement; or (d) a claim based upon an actual or alleged infringement of an intellectual property right of a third party arising from or related to the Licensee Software.
39
- FEEDBACK
40
- During the course of this Agreement, Licensee may provide input or feedback regarding the SDK, the Documentation, or other products, services, business or technology plans of Nutanix (collectively "Feedback"). In order for Nutanix to utilize such Feedback, Licensee grants to Nutanix a non-exclusive, perpetual, irrevocable, worldwide, royalty-free license, with the right to sublicense, under all relevant Intellectual Property Rights of Licensee, to use for any purpose, publish, and disclose such Feedback and to display, perform, copy, make, have made, use, sell, and otherwise exploit or dispose of such Feedback, including in connection with Nutanix's and its sublicensee's products or services embodying or based upon Feedback in any manner and via any media Nutanix chooses, without attribution or reference to the source of the Feedback. Nutanix shall be entitled to use Feedback for any purpose without restriction or remuneration of any kind with respect to Licensee and/or its representatives. Except for the foregoing license to use Feedback provided by Licensee at its sole discretion, Nutanix acquires no title or interest in any pre-existing or independently developed data, information, or Intellectual Property Rights of Licensee under this Agreement.
41
- USAGE DATA AND PRIVACY
42
- Notwithstanding anything to the contrary in the Agreement, Licensee agrees that Nutanix shall have the right to collect and process data pertaining to Licensee and its users and data related to their use of the SDK, Nutanix Products , and/or Support Services for Nutanix's legitimate business purposes, such as account management, security and support, as well as to develop, improve and market, products and services. Any such usage data shall be considered Feedback under the terms of this Agreement. Any personal data or personal information collected by Nutanix under this Agreement shall be processed by Nutanix in accordance with its data privacy statement, which can be found at https://www.nutanix.com/legal/privacy-statement.
43
- GENERAL
44
- Changes to the Agreement. We reserve the right, at our sole discretion, to amend this Agreement at any time and will update this Agreement in the event of any such amendments. Licensee’s continued use of the SDK constitutes agreement to our revisions of this Agreement.
45
- Severability. In the event any one or more of the provisions contained in this Agreement shall be held to be invalid or unenforceable in any respect, such invalidity or unenforceability shall not affect the other provisions of this Agreement, and this Agreement shall be construed as if such invalid or unenforceable provision had never been contained herein.
46
- Waiver. No waiver shall be effective unless in writing signed by the Party to be charged with the waiver. If either Party should waive any breach of any provision of this Agreement, it shall not thereby be deemed to have waived any preceding or succeeding breach of the same or any other provision hereof.
47
- Governing Law. This Agreement shall be governed by and construed under the laws of the state of California without regard to or application of its choice of law rules or principles. Each of the parties hereto consents to the exclusive jurisdiction and venue of the state and federal courts of Santa Clara County, California. In the event of any conflicts between foreign law, rules, and regulations, and United States of America law, rules, and regulations, United States of America law, rules, and regulations shall prevail and govern. The United Nations Convention on Contracts for the International Sale of Goods shall not apply to this Agreement. The Uniform Computer Information Transactions Act as enacted shall not apply.
48
- Compliance with Laws; Export Control. Each Party shall comply with all laws applicable to the actions contemplated by this Agreement. Licensee acknowledges that the SDK is of United States origin, and is subject to the U.S. Export Administration Regulations, and may be subject to the export control laws of the applicable territory, and that diversion contrary to applicable export control laws is prohibited. Licensee represents and warrants that (1) Licensee is not, and is not acting on behalf of, (a) any person who is a citizen, national, or resident of, or who is controlled by the government of any country to which the United States has prohibited export transactions; or (b) any person or entity listed on the U.S. Treasury Department lists of Specially Designated Nationals, Foreign Sanctions Evaders, Sectoral Sanctions Identifications, or Palestinian Legislative Council; or the U.S. Commerce Department Denied Persons List, Entity List, or Unverified List; or the U.S. State Department Nonproliferation Sanctions, or Debarred List; and (2) Licensee will not permit the SDK, directly, or indirectly, to be used for any purposes prohibited by law, including any prohibited development, design, manufacture or production of missiles or nuclear, chemical or biological weapons. Licensee agrees that the SDK may not be exported/re-exported to Cuba, Iran, North Korea, Sudan and Syria.
49
- Miscellaneous. If any part of this Agreement is held invalid or unenforceable, that part shall be construed to reflect the Parties' original intent, and the remaining portions remain in full force and effect. The controlling language of this Agreement is English. If Licensee has received a translation into another language, it has been provided for Licensee's convenience only. A waiver by either Party of any term or condition of this Agreement or any breach thereof, in any one instance, shall not waive such term or condition or any subsequent breach thereof. Licensee may not assign, delegate any performance, or otherwise transfer by operation of law or otherwise this Agreement or any rights or obligations herein. Licensee agrees not to copy, sell, give or assign the SDK, the Documentation, or any part thereof to a third party, including by operation of law. Nutanix may assign this Agreement to any person or entity at its sole discretion. This Agreement shall be binding upon and shall inure to the benefit of the Parties, their successors and permitted assigns. This Agreement constitutes the entire and sole agreement between Licensee and Nutanix with respect to the SDK and the Documentation and supersedes all prior and contemporaneous agreements relating to the SDK and the Documentation, whether oral or written (including any inconsistent terms contained in a purchase order). If Licensee is found to have breached Section 2 or Section 3 of this Agreement, then Nutanix shall be awarded attorney fees, costs and expenses.
1
+
2
+ Apache License
3
+ Version 2.0, January 2004
4
+ http://www.apache.org/licenses/
5
+
6
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
7
+
8
+ 1. Definitions.
9
+
10
+ "License" shall mean the terms and conditions for use, reproduction,
11
+ and distribution as defined by Sections 1 through 9 of this document.
12
+
13
+ "Licensor" shall mean the copyright owner or entity authorized by
14
+ the copyright owner that is granting the License.
15
+
16
+ "Legal Entity" shall mean the union of the acting entity and all
17
+ other entities that control, are controlled by, or are under common
18
+ control with that entity. For the purposes of this definition,
19
+ "control" means (i) the power, direct or indirect, to cause the
20
+ direction or management of such entity, whether by contract or
21
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
22
+ outstanding shares, or (iii) beneficial ownership of such entity.
23
+
24
+ "You" (or "Your") shall mean an individual or Legal Entity
25
+ exercising permissions granted by this License.
26
+
27
+ "Source" form shall mean the preferred form for making modifications,
28
+ including but not limited to software source code, documentation
29
+ source, and configuration files.
30
+
31
+ "Object" form shall mean any form resulting from mechanical
32
+ transformation or translation of a Source form, including but
33
+ not limited to compiled object code, generated documentation,
34
+ and conversions to other media types.
35
+
36
+ "Work" shall mean the work of authorship, whether in Source or
37
+ Object form, made available under the License, as indicated by a
38
+ copyright notice that is included in or attached to the work
39
+ (an example is provided in the Appendix below).
40
+
41
+ "Derivative Works" shall mean any work, whether in Source or Object
42
+ form, that is based on (or derived from) the Work and for which the
43
+ editorial revisions, annotations, elaborations, or other modifications
44
+ represent, as a whole, an original work of authorship. For the purposes
45
+ of this License, Derivative Works shall not include works that remain
46
+ separable from, or merely link (or bind by name) to the interfaces of,
47
+ the Work and Derivative Works thereof.
48
+
49
+ "Contribution" shall mean any work of authorship, including
50
+ the original version of the Work and any modifications or additions
51
+ to that Work or Derivative Works thereof, that is intentionally
52
+ submitted to Licensor for inclusion in the Work by the copyright owner
53
+ or by an individual or Legal Entity authorized to submit on behalf of
54
+ the copyright owner. For the purposes of this definition, "submitted"
55
+ means any form of electronic, verbal, or written communication sent
56
+ to the Licensor or its representatives, including but not limited to
57
+ communication on electronic mailing lists, source code control systems,
58
+ and issue tracking systems that are managed by, or on behalf of, the
59
+ Licensor for the purpose of discussing and improving the Work, but
60
+ excluding communication that is conspicuously marked or otherwise
61
+ designated in writing by the copyright owner as "Not a Contribution."
62
+
63
+ "Contributor" shall mean Licensor and any individual or Legal Entity
64
+ on behalf of whom a Contribution has been received by Licensor and
65
+ subsequently incorporated within the Work.
66
+
67
+ 2. Grant of Copyright License. Subject to the terms and conditions of
68
+ this License, each Contributor hereby grants to You a perpetual,
69
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
70
+ copyright license to reproduce, prepare Derivative Works of,
71
+ publicly display, publicly perform, sublicense, and distribute the
72
+ Work and such Derivative Works in Source or Object form.
73
+
74
+ 3. Grant of Patent License. Subject to the terms and conditions of
75
+ this License, each Contributor hereby grants to You a perpetual,
76
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
77
+ (except as stated in this section) patent license to make, have made,
78
+ use, offer to sell, sell, import, and otherwise transfer the Work,
79
+ where such license applies only to those patent claims licensable
80
+ by such Contributor that are necessarily infringed by their
81
+ Contribution(s) alone or by combination of their Contribution(s)
82
+ with the Work to which such Contribution(s) was submitted. If You
83
+ institute patent litigation against any entity (including a
84
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
85
+ or a Contribution incorporated within the Work constitutes direct
86
+ or contributory patent infringement, then any patent licenses
87
+ granted to You under this License for that Work shall terminate
88
+ as of the date such litigation is filed.
89
+
90
+ 4. Redistribution. You may reproduce and distribute copies of the
91
+ Work or Derivative Works thereof in any medium, with or without
92
+ modifications, and in Source or Object form, provided that You
93
+ meet the following conditions:
94
+
95
+ (a) You must give any other recipients of the Work or
96
+ Derivative Works a copy of this License; and
97
+
98
+ (b) You must cause any modified files to carry prominent notices
99
+ stating that You changed the files; and
100
+
101
+ (c) You must retain, in the Source form of any Derivative Works
102
+ that You distribute, all copyright, patent, trademark, and
103
+ attribution notices from the Source form of the Work,
104
+ excluding those notices that do not pertain to any part of
105
+ the Derivative Works; and
106
+
107
+ (d) If the Work includes a "NOTICE" text file as part of its
108
+ distribution, then any Derivative Works that You distribute must
109
+ include a readable copy of the attribution notices contained
110
+ within such NOTICE file, excluding those notices that do not
111
+ pertain to any part of the Derivative Works, in at least one
112
+ of the following places: within a NOTICE text file distributed
113
+ as part of the Derivative Works; within the Source form or
114
+ documentation, if provided along with the Derivative Works; or,
115
+ within a display generated by the Derivative Works, if and
116
+ wherever such third-party notices normally appear. The contents
117
+ of the NOTICE file are for informational purposes only and
118
+ do not modify the License. You may add Your own attribution
119
+ notices within Derivative Works that You distribute, alongside
120
+ or as an addendum to the NOTICE text from the Work, provided
121
+ that such additional attribution notices cannot be construed
122
+ as modifying the License.
123
+
124
+ You may add Your own copyright statement to Your modifications and
125
+ may provide additional or different license terms and conditions
126
+ for use, reproduction, or distribution of Your modifications, or
127
+ for any such Derivative Works as a whole, provided Your use,
128
+ reproduction, and distribution of the Work otherwise complies with
129
+ the conditions stated in this License.
130
+
131
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
132
+ any Contribution intentionally submitted for inclusion in the Work
133
+ by You to the Licensor shall be under the terms and conditions of
134
+ this License, without any additional terms or conditions.
135
+ Notwithstanding the above, nothing herein shall supersede or modify
136
+ the terms of any separate license agreement you may have executed
137
+ with Licensor regarding such Contributions.
138
+
139
+ 6. Trademarks. This License does not grant permission to use the trade
140
+ names, trademarks, service marks, or product names of the Licensor,
141
+ except as required for reasonable and customary use in describing the
142
+ origin of the Work and reproducing the content of the NOTICE file.
143
+
144
+ 7. Disclaimer of Warranty. Unless required by applicable law or
145
+ agreed to in writing, Licensor provides the Work (and each
146
+ Contributor provides its Contributions) on an "AS IS" BASIS,
147
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
148
+ implied, including, without limitation, any warranties or conditions
149
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
150
+ PARTICULAR PURPOSE. You are solely responsible for determining the
151
+ appropriateness of using or redistributing the Work and assume any
152
+ risks associated with Your exercise of permissions under this License.
153
+
154
+ 8. Limitation of Liability. In no event and under no legal theory,
155
+ whether in tort (including negligence), contract, or otherwise,
156
+ unless required by applicable law (such as deliberate and grossly
157
+ negligent acts) or agreed to in writing, shall any Contributor be
158
+ liable to You for damages, including any direct, indirect, special,
159
+ incidental, or consequential damages of any character arising as a
160
+ result of this License or out of the use or inability to use the
161
+ Work (including but not limited to damages for loss of goodwill,
162
+ work stoppage, computer failure or malfunction, or any and all
163
+ other commercial damages or losses), even if such Contributor
164
+ has been advised of the possibility of such damages.
165
+
166
+ 9. Accepting Warranty or Additional Liability. While redistributing
167
+ the Work or Derivative Works thereof, You may choose to offer,
168
+ and charge a fee for, acceptance of support, warranty, indemnity,
169
+ or other liability obligations and/or rights consistent with this
170
+ License. However, in accepting such obligations, You may act only
171
+ on Your own behalf and on Your sole responsibility, not on behalf
172
+ of any other Contributor, and only if You agree to indemnify,
173
+ defend, and hold each Contributor harmless for any liability
174
+ incurred by, or claims asserted against, such Contributor by reason
175
+ of your accepting any such warranty or additional liability.
176
+
177
+ END OF TERMS AND CONDITIONS
178
+
179
+ APPENDIX: How to apply the Apache License to your work.
180
+
181
+ To apply the Apache License to your work, attach the following
182
+ boilerplate notice, with the fields enclosed by brackets "[]"
183
+ replaced with your own identifying information. (Don't include
184
+ the brackets!) The text should be enclosed in the appropriate
185
+ comment syntax for the file format. We also recommend that a
186
+ file or class name and description of purpose be included on the
187
+ same "printed page" as the copyright notice for easier
188
+ identification within third-party archives.
189
+
190
+ Copyright [yyyy] [name of copyright owner]
191
+
192
+ Licensed under the Apache License, Version 2.0 (the "License");
193
+ you may not use this file except in compliance with the License.
194
+ You may obtain a copy of the License at
195
+
196
+ http://www.apache.org/licenses/LICENSE-2.0
197
+
198
+ Unless required by applicable law or agreed to in writing, software
199
+ distributed under the License is distributed on an "AS IS" BASIS,
200
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
201
+ See the License for the specific language governing permissions and
202
+ limitations under the License.
package/README.md CHANGED
@@ -1,14 +1,14 @@
1
- # Javascript Client For Nutanix Dataprotection Versioned APIs
1
+ # Javascript Client For Nutanix Data Protection APIs
2
2
 
3
- The Javascript client for Nutanix Dataprotection Versioned APIs is designed for Javascript client application developers offering them simple and flexible access to APIs that business Continuity with full spectrum of Disaster Recovery and Backup solution. Spanning across Single PC, Cross AZ, MultiSite. Configuration of Recovery points, Protection policies, Recovery Plans. Execution and monitoring of back up and recovery orchestrations on OnPrem as well as Cloud.
3
+ The Javascript client for Nutanix Data Protection APIs is designed for Javascript client application developers offering them simple and flexible access to APIs that business Continuity with full spectrum of Disaster Recovery and Backup solution. Spanning across Single PC, Cross AZ, MultiSite. Configuration of Recovery points, Protection policies, Recovery Plans. Execution and monitoring of back up and recovery orchestrations on OnPrem as well as Cloud.
4
4
  ## Features
5
5
  - Invoke Nutanix APIs with a simple interface.
6
6
  - Handle Authentication seamlessly.
7
7
  - Reduce boilerplate code implementation.
8
8
  - Use standard methods for installation.
9
9
  ## Version
10
- - API version: v4.0.b1
11
- - Package version: 4.0.1-beta.1
10
+ - API version: v4.0
11
+ - Package version: 4.0.1
12
12
 
13
13
  ## Requirements.
14
14
  Node.JS 14, 15, 16, 17 and 18 are fully supported and tested.
@@ -24,7 +24,7 @@ $ npm install @nutanix-api/dataprotection-js-client
24
24
  ```
25
25
 
26
26
  ## Configuration
27
- The javascript client for Nutanix Dataprotection Versioned APIs can be configured with the following parameters
27
+ The javascript client for Nutanix Data Protection APIs can be configured with the following parameters
28
28
 
29
29
  | Parameter | Description | Required | Default Value|
30
30
  |-----------|------------------------------------------------------------------------------|---------- |--------------|
@@ -37,6 +37,7 @@ The javascript client for Nutanix Dataprotection Versioned APIs can be configure
37
37
  | verifySsl | Verify SSL certificate of cluster, the client will connect to | No | True |
38
38
  | maxRetryAttempts| Maximum number of retry attempts while connecting to the cluster | No | 5 |
39
39
  | retryInterval| Interval in milliseconds at which retry attempts are made | No | 3000 |
40
+ | maxRedirects | Maximum number of redirects to follow | No | 10 |
40
41
  | loggerFile | File location to which debug logs are written to | No | N/A |
41
42
  | connectTimeout | Connection timeout in milliseconds for all operations | No | 30000 |
42
43
  | readTimeout | Read timeout in milliseconds for all operations | No | 30000 |
@@ -46,18 +47,18 @@ While using the module in browser frameworks like React or Vue.JS , you can use
46
47
 
47
48
  For CommonJs:
48
49
  ```javascript
49
- const sdk = require("@nutanix-api/dataprotection-js-client/dist/lib/index");
50
+ const sdk = require("@nutanix-api/dataprotection-js-client");
50
51
  let client = new sdk.ApiClient();
51
52
  ```
52
53
 
53
54
  For ES6 modules:
54
55
  ```javascript
55
- import ApiClient from "@nutanix-api/dataprotection-js-client/dist/es/ApiClient";
56
+ import ApiClient from "@nutanix-api/dataprotection-js-client";
56
57
  ```
57
58
 
58
59
  ### Sample Configuration
59
60
  ```javascript
60
- import ApiClient from "@nutanix-api/dataprotection-js-client/dist/es/ApiClient";
61
+ import ApiClient from "@nutanix-api/dataprotection-js-client";
61
62
 
62
63
  let client = new ApiClient();
63
64
  client.host = '10.19.50.27'; // IPv4/IPv6 address or FQDN of the cluster
@@ -67,19 +68,37 @@ client.password = 'password'; // Password to connect to the cluster
67
68
  ```
68
69
 
69
70
  ### Authentication
70
- Nutanix APIs currently support HTTP Basic Authentication only, and the client can be configured using the username and password parameters to send Basic headers along with every request.
71
+ Nutanix APIs currently support two type of authentication schemes:
72
+
73
+ - **HTTP Basic Authentication**
74
+ - The Javascript client can be configured using the username and password parameters to send Basic headers along with every request.
75
+ - **API Key Authentication**
76
+ - The Javascript client can be configured to set an API key to send "**X-ntnx-api-key**" header with every request.
77
+ ```javascript
78
+ import ApiClient from "@nutanix-api/dataprotection-js-client";
79
+
80
+ let client = new ApiClient();
81
+ client.setApiKey('abcde12345');
82
+ ```
83
+
84
+
85
+
71
86
  ### Retry Mechanism
72
87
  The client can be configured to retry requests that fail with the following status codes. The numbers of seconds before which the next retry is attempted is determined by the retryInterval:
73
88
 
74
89
  - [408 - Request Timeout](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/408)
90
+ - [429 - Too Many Requests](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/429)
75
91
  - [502 - Bad Gateway](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/502)
76
92
  - [503 - Service Unavailable](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/503)
93
+
94
+ The client will also redirect requests that fail with [302 - Found](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/302) to the new location specified in the response header `Location`.
77
95
  ```javascript
78
- import ApiClient from "@nutanix-api/dataprotection-js-client/dist/es/ApiClient";
96
+ import ApiClient from "@nutanix-api/dataprotection-js-client";
79
97
 
80
98
  let client = new ApiClient();
81
99
  client.maxRetryAttempts = 5 // Max retry attempts while reconnecting on a loss of connection
82
100
  client.retryInterval = 5000 // Interval in ms to use during retry attempts
101
+ client.maxRedirects = 3 // Max number of redirects to follow
83
102
  ```
84
103
 
85
104
  ## Usage
@@ -88,8 +107,7 @@ client.retryInterval = 5000 // Interval in ms to use during retry attempts
88
107
  ```javascript
89
108
  // this sample code is not usable directly for real use-case
90
109
 
91
- import ApiClient from "@nutanix-api/dataprotection-js-client/dist/es/ApiClient";
92
- import SampleApi from "@nutanix-api/dataprotection-js-client/dist/es/apis/sample-endpoints";
110
+ import { ApiClient, SampleApi } from "@nutanix-api/dataprotection-js-client";
93
111
  // Configure the client
94
112
  // ...
95
113
  let client = new ApiClient();
@@ -111,7 +129,7 @@ The library provides the ability to specify additional options that can be appli
111
129
  The 'ApiClient' can be configured to send additional headers on each request.
112
130
 
113
131
  ```javascript
114
- import ApiClient from "@nutanix-api/dataprotection-js-client/dist/es/ApiClient";
132
+ import ApiClient from "@nutanix-api/dataprotection-js-client";
115
133
 
116
134
  let client = new ApiClient();
117
135
  client.addDefaultHeader('Accept-Encoding','gzip, deflate, br');
@@ -123,8 +141,7 @@ Nutanix APIs require that concurrent updates are protected using [ETag](https://
123
141
  ```javascript
124
142
  // this sample code is not usable directly for real use-case
125
143
 
126
- import ApiClient from "@nutanix-api/dataprotection-js-client/dist/es/ApiClient";
127
- import SampleApi from "@nutanix-api/dataprotection-js-client/dist/es/apis/sample-endpoints";
144
+ import { ApiClient, SampleApi } from "@nutanix-api/dataprotection-js-client";
128
145
  // Configure the client
129
146
  // ...
130
147
  let client = new ApiClient();
@@ -162,8 +179,7 @@ List Options can be passed to list operations in order to perform pagination, fi
162
179
  ```javascript
163
180
  // this sample code is not usable directly for real use-case
164
181
 
165
- import ApiClient from "@nutanix-api/dataprotection-js-client/dist/es/ApiClient";
166
- import SampleApi from "@nutanix-api/dataprotection-js-client/dist/es/apis/sample-endpoints";
182
+ import { ApiClient, SampleApi } from "@nutanix-api/dataprotection-js-client";
167
183
  // Configure the client
168
184
  // ...
169
185
  let client = new ApiClient();
@@ -192,10 +208,10 @@ The list of filterable and sortable fields with expansion keys can be found in t
192
208
 
193
209
  ## API Reference
194
210
 
195
- This library has a full set of [API Reference Documentation](https://developers.nutanix.com/sdk-reference?namespace=dataprotection&version=v4.0.b1&language=javascript). This documentation is auto-generated, and the location may change.
211
+ This library has a full set of [API Reference Documentation](https://developers.nutanix.com/sdk-reference?namespace=dataprotection&version=v4.0&language=javascript). This documentation is auto-generated, and the location may change.
196
212
 
197
213
  ## License
198
- This library is licensed under Nutanix proprietary license. Full license text is available in [LICENSE](https://developers.nutanix.com/license).
214
+ This library is licensed under Apache 2.0 license. Full license text is available in [LICENSE](https://www.apache.org/licenses/LICENSE-2.0.txt).
199
215
 
200
216
  ## Contact us
201
217
  In case of issues please reach out to us at the [mailing list](mailto:sdk@nutanix.com)